|
2.0/chapter17/#67 |
2009-11-29 03:56:37
|
出于性能的考虑,每个已启用的中间件在每个服务器进程中只初始化 <emphasis>一</emphasis> 次。也就是说 <3>__init__()<4> 仅在服务进程启动的时候调用,而在针对单个request处理时并不执行。
|
|
|
2.0/chapter17/#67 |
2009-11-29 03:56:07
|
出于性能的考虑,每个已启用的中间件在每个服务器进程中只初始化 <emphasis>一</emphasis> 次。也就是说 <3>__init__()<4> 仅在服务进程启动的时候调用,而在针对单个request处理时并不执行。
|
|
|
2.0/chapter17/#68 |
2009-11-29 03:55:37
|
也就是说 <3>__init__()<4> 仅在服务进程启动的时候调用,而在针对单个request处理时并不执行。
|
|
|
2.0/chapter17/#67 |
2009-11-29 03:53:13
|
出于性能的考虑,每个已启用的中间件在每个服务器进程中只初始化 <emphasis>一</emphasis> 次。
|
|
old_taoist
|
2.0/chapter19/#200 |
2009-11-28 15:18:16
|
当你在你的代码中其它地方使用这些对象时,你应当确定你不会意外地转换它们成一个字符串,因为它们应被尽量晚的转换(以便正确的地域生效)
|
|
old_taoist
|
2.0/chapter19/#211 |
2009-11-28 15:10:36
|
在这种情况下,当
<literal>result</literal> 自己被用与一个字符串时, <literal>result</literal> 中的惰性翻译将仅被转换为字符串(通常在模板渲染时间)。
|
|
old_taoist
|
2.0/chapter19/#207 |
2009-11-28 15:05:53
|
作为替代,你可以使用<literal>django.utils.translation.string_concat()</literal>, which creates a lazy object that
concatenates its contents <emphasis>and</emphasis> converts them to strings only when the result
is included in a string.
|
|
old_taoist
|
2.0/chapter19/#206 |
2009-11-28 15:04:01
|
标准Python字符串拼接(<literal>''.join([...])</literal> ) 将不会工作在包括惰性翻译对象的列表上。
|
|
old_taoist
|
2.0/chapter19/#203 |
2009-11-28 15:00:52
|
拼接字符串:
|
|
old_taoist
|
2.0/chapter19/#215 |
2009-11-28 15:00:02
|
Django提供很多功能函数(如:取一个字符串作为他们的第一个参数并且对那个字符串做些什么)。(尤其在 <literal>django.utils</literal> 中)
|
|
old_taoist
|
2.0/chapter19/#213 |
2009-11-28 14:52:13
|
allow_lazy() 修饰符
|
|
old_taoist
|
2.0/chapter19/#219 |
2009-11-28 14:51:01
|
因为你可能在视图之外使用这个函数(并且因此当前线程的本地设置将会不正确),所以你不想立即转换其为一个字符串。
|
|
old_taoist
|
2.0/chapter19/#219 |
2009-11-28 14:50:00
|
源于你可能在视图之外使用这个函数(并且因此当前线程的本地设置将会不正确),因此你不想立即转换其为一个字符串。
|
|
old_taoist
|
2.0/chapter19/#218 |
2009-11-28 14:43:56
|
如果你写你自己的类似函数并且与翻译打交道,当第一个参数是惰性翻译对象是,你会面临“做什么”的难题。
|
|
old_taoist
|
2.0/chapter19/#216 |
2009-11-28 14:40:21
|
这些函数被模板过滤器像在其他代码中一样直接使用。
|
|
old_taoist
|
2.0/chapter19/#221 |
2009-11-28 14:34:35
|
象这种情况,请使用 <literal>django.utils.functional.allow_lazy()</literal>
修饰符。
|
|
old_taoist
|
2.0/chapter19/#224 |
2009-11-28 14:33:07
|
例如:
|
|
old_taoist
|
2.0/chapter19/#308 |
2009-11-28 14:31:09
|
作为方便之处,每一个消息都包括:以 <literal>#</literal> 为前缀的一个注释行并且定位上边的<literal>msgid</literal> 行,文件名和行号。
|
|
old_taoist
|
2.0/chapter19/#543 |
2009-11-28 14:14:55
|
Django翻译目录支持 django-admin.py makemessages 工具。
|
|
old_taoist
|
2.0/chapter19/#241 |
2009-11-28 14:07:51
|
如果你想尝试这个并且Django支持它,你会不可避免地见到这样一个混合体------参杂着你的译文和来自Django自己的英文。
|
|
old_taoist
|
2.0/chapter19/#230 |
2009-11-28 13:47:22
|
使用这个修饰符意味着你能写你的函数并且假设输入是合适的字符串,然后在末尾添加对惰性翻译对象的支持。
|
|
old_taoist
|
2.0/chapter19/#228 |
2009-11-28 13:43:15
|
通常,在这里包括 <literal>unicode</literal> 就足够了并且确定你的函数将仅返回Unicode字符串。
|
|
xypmdxx
|
2.0/chapter15/#73 |
2009-11-27 13:24:00
|
作为您的缓存后端数据库表中,首先在数据库中创建通过运行这个命令缓存表:
|
|
xypmdxx
|
2.0/chapter15/#67 |
2009-11-26 21:46:05
|
由于缓存的数据存储在内存中的数据将会丢失,如果您的服务器崩溃。
|
|
xypmdxx
|
2.0/chapter15/#67 |
2009-11-26 21:45:39
|
由于缓存的数据存储在内存中的数据将会丢失,如果您的服务器崩溃。
|
|
xypmdxx
|
2.0/chapter15/#166 |
2009-11-26 21:44:00
|
一旦高速缓存设置,最简单的方法是使用缓存缓存整个网站。
|
|
xypmdxx
|
2.0/chapter15/#131 |
2009-11-26 21:43:28
|
如果您构建自己的后端,你可以使用标准的参考实现缓存后端。
|
|
xypmdxx
|
2.0/chapter15/#115 |
2009-11-26 21:42:08
|
这是很好的发展。
|
|
xypmdxx
|
2.0/chapter15/#41 |
2009-11-26 21:41:25
|
所有数据都直接存储在内存中,所以没有对使用的数据库或文件系统的开销。
|
|
xypmdxx
|
2.0/chapter15/#86 |
2009-11-26 21:40:39
|
数据库缓存效果最佳,如果你已经有了一个快速,良好的索引数据库服务器。
|
|
xypmdxx
|
2.0/chapter15/#6 |
2009-11-26 21:39:08
|
|
|
xypmdxx
|
2.0/chapter15/#44 |
2009-11-26 21:37:21
|
这两个可用版本。
|
|
xypmdxx
|
2.0/chapter10/#191 |
2009-11-26 21:29:20
|
下面是编码该注意的一些地方:
|
|
xypmdxx
|
2.0/chapter10/#191 |
2009-11-26 21:28:19
|
下面是一些关于编码的笔记:
|
|
xypmdxx
|
2.0/chapter10/#188 |
2009-11-26 21:27:37
|
有了这个manager地方,我们现在可以这样做:
|
|
xypmdxx
|
2.0/chapter10/#188 |
2009-11-26 21:27:22
|
manager有了这个地方,我们现在可以这样做:
|
|
xypmdxx
|
2.0/chapter10/#185 |
2009-11-26 21:22:20
|
(这个例子稍微做作,但它演示了如何管理工作。)
|
|
xypmdxx
|
2.0/chapter10/#181 |
2009-11-26 21:19:40
|
增加额外manager的方法是首选的办法来添加表级功能的你的模块。
|
|
xypmdxx
|
2.0/chapter10/#181 |
2009-11-26 21:19:16
|
manager增加额外的方法是首选的办法来添加表级功能的你的模块。
|
|
xypmdxx
|
2.0/chapter10/#177 |
2009-11-26 21:16:36
|
增加额外的manager方法,和/或修改最初QuerySet的manager返回值。
|
|
xypmdxx
|
2.0/chapter10/#177 |
2009-11-26 21:15:26
|
methods增加额外的manager方法,和/或修改最初QuerySet的返回值。
|
|
xypmdxx
|
2.0/chapter10/#179 |
2009-11-26 21:13:25
|
Manager增加额外的方法
|
|
xypmdxx
|
2.0/chapter10/#176 |
2009-11-26 21:12:10
|
下面是你manager创建自定义创建的两个原因
|
|
xypmdxx
|
2.0/chapter10/#174 |
2009-11-26 21:10:27
|
每个Django模块至少有一个manager,你可以创建自定义管理中以自定义数据库访问。
|
|
xypmdxx
|
2.0/chapter10/#174 |
2009-11-26 21:09:09
|
每个Django模块manager至少有一个,你可以创建自定义管理,以自定义数据库访问。
měi gèDjango mó xíng zhì shǎo yǒu yī míng jīng lǐ, nǐ kě yǐ chuàng jiàn zì dìng yì guǎn lǐ, yǐ zì dìng yì shù jù kù fǎng wèn。
|
|
xypmdxx
|
2.0/chapter10/#170 |
2009-11-26 21:07:21
|
在声明中 Book.objects.all() , objects是一个特殊的属性,需要通过它查询数据库。
|
|
xypmdxx
|
2.0/chapter10/#171 |
2009-11-26 21:06:45
|
在第5章,我们简要地确定模块manager 。现在是时候更深入的使用managers它们。
|
|
xypmdxx
|
2.0/chapter10/#173 |
2009-11-26 21:06:21
|
总之,模块manager是一个对象,通过它Django的模块进行数据库查询。
|
|
xypmdxx
|
2.0/chapter10/#173 |
2009-11-26 21:05:45
|
manager 总之,模块是一个对象,通过它Django的模块进行数据库查询。
|
|
xypmdxx
|
2.0/chapter10/#171 |
2009-11-26 21:03:42
|
managers在第5章,我们简要地确定模块manager 。现在是时候更深入的使用它们。
|
|