Changelog

全名 页面 提交时间 (Descending) Unsort 内容 注释 ...
ySJ 2.0/chapter16/#47 2010-04-23 12:47:21 <literal>formtools</literal>:一些列处理表单通用模式的高级库。
ySJ 2.0/chapter16/#48 2010-04-23 11:22:55 本书没有介绍这方面的知识;详情请参阅Django官方文档。
ySJ 2.0/chapter16/#45 2010-04-23 11:22:35 参见后面标题为“Flatpages”的小节。
ySJ 2.0/chapter16/#44 2010-04-23 11:22:27 <literal>flatpages</literal> : 一个在数据库中管理单一HTML内容的模块。
ySJ 2.0/chapter16/#42 2010-04-23 11:22:02 本书没有介绍这方面的知识;详情请参阅Django官方文档。
ySJ 2.0/chapter16/#41 2010-04-23 11:21:36 <literal>databrowse</literal>:帮助你浏览数据的Django应用。
ySJ 2.0/chapter16/#39 2010-04-23 11:21:02 见后面标题为"CSRF 防御"的小节。
ySJ 2.0/chapter16/#38 2010-04-23 11:20:48 <literal>csrf</literal> : 这个模块用来防御跨站请求伪造(CSRF)。参
ySJ 2.0/chapter16/#36 2010-04-23 11:19:54 可以通过阅读源码来了解关于这个框架的更多信息,源码的位置在 <literal>django/contrib/contenttypes/</literal>
ySJ 2.0/chapter16/#34 2010-04-23 11:19:18 <literal>contenttypes</literal> : 这是一个用于引入文档类型的框架,每个安装的Django模块作为一种独立的文档类型。
ySJ 2.0/chapter16/#32 2010-04-23 11:18:31 本书没有介绍这方面的知识;详情请参阅Django官方文档。
ySJ 2.0/chapter16/#29 2010-04-23 11:16:18 参见第十四章。
ySJ 2.0/chapter16/#26 2010-04-23 11:15:36 本书没有介绍这方面的知识;详情请参阅Django官方文档。
ySJ 2.0/chapter16/#25 2010-04-23 11:04:12 <literal>admindocs</literal>:为Django admin站点提供自动文档。
ySJ 2.0/chapter16/#23 2010-04-23 11:02:22 请查看第6章。
ySJ 2.0/chapter16/#18 2010-04-23 11:01:35 当 Django 开发者向框架增加新功能的时,他们会严格根据这一原则来决定是否把新功能放入<literal>django.contrib</literal>中。
ySJ 2.0/chapter16/#17 2010-04-23 11:01:01 就算你将整个<literal>django.contrib</literal>开发包删除,你依然可以使用 Django 的基础功能而不会遇到任何问题。
ySJ 2.0/chapter16/#16 2010-04-23 11:00:33 <literal>django.contrib</literal> 开发包共有的特性是:
ySJ 2.0/chapter16/#12 2010-04-23 10:57:16 这些子包一般是互相独立的,不过有些<literal>django.contrib</literal>子包需要依赖其他子包。
ySJ 2.0/chapter16/#11 2010-04-23 10:54:16 Django的标准库存放在 <literal>django.contrib</literal> 包中。每个子包都是一个独立的附加功能包。
ySJ 2.0/chapter16/#5 2010-04-23 10:48:13 安装Python的同时会安装好大量的标准软件包,这样 你可以立即使用而不用自己去下载。
ySJ 2.0/chapter15/#472 2010-04-23 10:47:07 admin站点(第六章)和session/user框架(第十四章)。
ySJ 2.0/chapter15/#473 2010-04-23 10:46:17 下一章中,我们将讲述Django中其他的子框架。
ySJ 2.0/chapter15/#471 2010-04-23 10:45:53 我们已经介绍了一些:
ySJ 2.0/chapter15/#470 2010-04-23 10:44:48 Django捆绑了一系列可选的方便特性。
ySJ 2.0/chapter15/#466 2010-04-23 10:43:12 <literal>FetchFromCacheMiddleware</literal>也需要在会修改<literal>Vary</literal>头部的中间件之后运行,所以<literal>FetchFromCacheMiddleware</literal>必须放在它们<emphasis>后面</emphasis>
ySJ 2.0/chapter15/#465 2010-04-23 10:41:11 另一方面,<literal>FetchFromCacheMiddleware</literal>在请求阶段运行,这时中间件循序执行,所以列表顶端的项目会<emphasis>首先</emphasis>执行。
ySJ 2.0/chapter15/#463 2010-04-23 10:38:25 添加<literal>Accept-Language</literal><literal>LocaleMiddleware</literal>
ySJ 2.0/chapter15/#457 2010-04-23 10:37:20 下面的中间件模块就是这样的:
ySJ 2.0/chapter15/#461 2010-04-23 10:37:06 添加 <literal>Accept-Encoding</literal><literal>GZipMiddleware</literal>
ySJ 2.0/chapter15/#457 2010-04-23 10:36:36 下面的中间件模块就是这么做的:
ySJ 2.0/chapter15/#456 2010-04-23 10:35:12 所有,你需要确保<literal>UpdateCacheMiddleware</literal>排在任何可能往<emphasis>Vary</emphasis>头部添加信息的中间件<literal>之前</literal>
ySJ 2.0/chapter15/#455 2010-04-23 10:33:26 <literal>UpdateCacheMiddleware</literal>在相应阶段运行。因为中间件是以相反顺序运行的,所有列表顶部的中间件反而<emphasis>last</emphasis>在相应阶段的最后运行。
ySJ 2.0/chapter15/#453 2010-04-23 10:31:26 中间件总是尽可能得想<literal>Vary</literal>响应头中添加信息。
ySJ 2.0/chapter15/#452 2010-04-23 10:30:17 因为缓存中间件需要知道哪些头部信息由哪些缓存区来区分。
ySJ 2.0/chapter15/#451 2010-04-23 10:28:22 如果使用缓存中间件,注意在<literal>MIDDLEWARE_CLASSES</literal>设置中正确配置。
ySJ 2.0/chapter15/#445 2010-04-23 10:26:13 <literal>django.middleware.http.ConditionalGetMiddleware</literal> 为现代浏览器增加了有条件的,基于 <literal>ETag</literal><literal>Last-Modified</literal> 头标的GET响应的相关支持。
ySJ 2.0/chapter15/#438 2010-04-23 10:25:09 例如:
ySJ 2.0/chapter15/#437 2010-04-23 10:22:04 如果你想用头部完全禁掉缓存,<literal>django.views.decorators.cache.never_cache</literal>装饰器可以添加确保响应不被缓存的头部信息。
ySJ 2.0/chapter15/#435 2010-04-23 10:19:39 如果你在cache_control修饰器中使用了自定义的max_age,该修饰器将会取得优先权,该头部的值将被正确地被合并。
ySJ 2.0/chapter15/#434 2010-04-23 10:19:05 缓存中间件已经使用 <literal>CACHE_MIDDLEWARE_SETTINGS</literal> 设置设定了缓存头部 max-age 。
ySJ 2.0/chapter15/#416 2010-04-23 10:18:25 <literal>cache_control()</literal> 中,任何合法的<literal>Cache-Control</literal> HTTP 指令都是有效的。下面是完整列表:
ySJ 2.0/chapter15/#410 2010-04-23 10:17:07 (一些缓存即便在服务器页面发生变化的情况下仍然会传送所缓存的内容,只因为缓存拷贝没有过期。)
ySJ 2.0/chapter15/#407 2010-04-23 10:15:33 定义页面可以被缓存的最大时间。
ySJ 2.0/chapter15/#402 2010-04-23 10:12:23 该修饰器负责在后台发送相应的 HTTP 头部。
ySJ 2.0/chapter15/#399 2010-04-23 10:10:37 例如:
ySJ 2.0/chapter15/#389 2010-04-23 10:07:58 关于缓存剩下的问题是数据的隐私性以及在级联缓存中数据应该在何处储存的问题。
ySJ 2.0/chapter15/#387 2010-04-23 10:07:01 使用其它头部
ySJ 2.0/chapter15/#386 2010-04-23 10:06:50 控制缓存:
ySJ 2.0/chapter15/#380 2010-04-23 10:05:59 你也可以直接使用帮助函数:<literal>django.utils.cache.patch_vary_headers</literal>
« < 6 7 8 9 10 11 12 > » 96 pages