Python论坛  - 讨论区

标题:[python-chinese] django中自己的core model定义中使用lazy为何用

2005年11月17日 星期四 13:23

Fat fatbobman at gmail.com
Thu Nov 17 13:23:46 HKT 2005

limodou的blog以前提过lazy的一些事情,现在在django中发现被使用的不少。不过并不清楚其具体的用途。记得在哪里见过django的模版系统也有很多使用。
看django自己core的model定义,其中也有不少lazy的应用。类似如下:
from django.utils.translation import gettext_lazy as _

class Site(meta.Model):
    domain = meta.CharField(_('domain name'), maxlength=100)
    name = meta.CharField(_('display name'), maxlength=50)

因为仅仅是定义human-readable名字,为什么要用lazy.单纯为了cool还是确有什么具体的作用?

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 13:40

limodou limodou at gmail.com
Thu Nov 17 13:40:22 HKT 2005

在 05-11-17,Fat<fatbobman at gmail.com> 写道:
> limodou的blog以前提过lazy的一些事情,现在在django中发现被使用的不少。不过并不清楚其具体的用途。记得在哪里见过django的模版系统也有很多使用。
> 看django自己core的model定义,其中也有不少lazy的应用。类似如下:
> from django.utils.translation import gettext_lazy as _
>
> class Site(meta.Model):
>     domain = meta.CharField(_('domain name'), maxlength=100)
>     name = meta.CharField(_('display name'), maxlength=50)
>
> 因为仅仅是定义human-readable名字,为什么要用lazy.单纯为了cool还是确有什么具体的作用?
>

这与我以前做的confbot中的i18n的方式很象。这是为了动态的语言切换。也就是只安装一套django,却可以同时支持多国语言。想要达到这个目的就必须每次_()都需要重新计算,而不是只计算一次就完成。而且_()还必须有能力在运行中根据用户浏览器的不同实现动态的语言切换。这只是我的猜想,不然没有必要使用lazy的方法。不过在settings.py中也有语言的设置。再学习学习。它的lazy方法很有意思。


--
I like python!
My Blog: http://www.donews.net/limodou
NewEdit Maillist: http://groups.google.com/group/NewEdit

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 13:42

Fat fatbobman at gmail.com
Thu Nov 17 13:42:44 HKT 2005

看了一下其他的代码。大概知道了使用lazy的目的是为了解决admin多语言的原因。具体怎么用?我们如何能在自己的项目中使用,还需要好好看看

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 13:46

Zoom Quiet zoom.quiet at gmail.com
Thu Nov 17 13:46:36 HKT 2005

在 05-11-17,Fat<fatbobman at gmail.com> 写道:
> limodou的blog以前提过lazy的一些事情,现在在django中发现被使用的不少。不过并不清楚其具体的用途。记得在哪里见过django的模版系统也有很多使用。
> 看django自己core的model定义,其中也有不少lazy的应用。类似如下:
> from django.utils.translation import gettext_lazy as _
看的很深哪…………
可能是为了 catch 的准备?

> class Site(meta.Model):
>     domain = meta.CharField(_('domain name'), maxlength=100)
>     name = meta.CharField(_('display name'), maxlength=50)
>
> 因为仅仅是定义human-readable名字,为什么要用lazy.单纯为了cool还是确有什么具体的作用?
>
> _______________________________________________
> Python中文技术讨论邮件列表
> 发言: 发邮件到 python-chinese at lists.python.cn
> 订阅: 发送 subscribe 到 python-chinese-request at lists.python.cn
> 退订: 发送 unsubscribe 到  python-chinese-request at lists.python.cn
> 详细说明: http://python.cn/mailman/listinfo/python-chinese
>
>


--
# Time is unimportant, only life important!
## 面朝开源,我心自由!

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 13:51

Fat fatbobman at gmail.com
Thu Nov 17 13:51:59 HKT 2005

在 05-11-17,limodou<limodou at gmail.com> 写道:

> 这与我以前做的confbot中的i18n的方式很象。这是为了动态的语言切换。也就是只安装一套django,却可以同时支持多国语言。想要达到这个目的就必须每次_()都需要重新计算,而不是只计算一次就完成。而且_()还必须有能力在运行中根据用户浏览器的不同实现动态的语言切换。这只是我的猜想,不然没有必要使用lazy的方法。不过在settings.py中也有语言的设置。再学习学习。它的lazy方法很有意思。

确实如你所言。其在translation.py中通过浏览器判断所需语言然后进行替换。加以利用,对于自己项目的多语言支持应该是很好的帮助

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 14:46

jejwe jejwester at gmail.com
Thu Nov 17 14:46:38 HKT 2005

我安装django出现
The required version of setuptools (>=0.6a7) is not available, and
can't be installed while this script is running. Please install
a more recent version first.
 我下载的已经是最新的版本,为什么还会这样提示呢
   另,我感觉随着现在ROR的流行,这种框架越来越多的人在学习,最近看到一个。NET也出了这种框架。MonoRail<http://www.castleproject.org/index.php/MonoRail>
,而且在很多介绍中还提到了说是类似ROR和DJANGO,看来虽然好象DJANGO当时还没发正式版,但名气已经很大了。这会不会是将来的一个流行呢。
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20051117/5edd0e45/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 14:53

Fat fatbobman at gmail.com
Thu Nov 17 14:53:50 HKT 2005

在 05-11-17,jejwe<jejwester at gmail.com> 写道:
> 我安装django出现
> The required version of setuptools (>=0.6a7) is not available, and
> can't be installed while this script is running. Please install
>  a more recent version first.
>
> 我下载的已经是最新的版本,为什么还会这样提示呢

你的 setuptools版本不够吧。
我是直接svn co的,没用安装版

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 14:56

limodou limodou at gmail.com
Thu Nov 17 14:56:27 HKT 2005

在 05-11-17,jejwe<jejwester at gmail.com> 写道:
> 我安装django出现
> The required version of setuptools (>=0.6a7) is not available, and
> can't be installed while this script is running. Please install
>  a more recent version first.
>
> 我下载的已经是最新的版本,为什么还会这样提示呢
>
django是最新的,但setuptools是最新的吗?如果不是下载最新的吧。现在最新的是0.6a8了。
>
>
> 另,我感觉随着现在ROR的流行,这种框架越来越多的人在学习,最近看到一个。NET也出了这种框架。MonoRail,而且在很多介绍中还提到了说是类似ROR和DJANGO,看来虽然好象DJANGO当时还没发正式版,但名气已经很大了。这会不会是将来的一个流行呢。

这个不好说,跟着走吧。


--
I like python!
My Blog: http://www.donews.net/limodou
NewEdit Maillist: http://groups.google.com/group/NewEdit

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 16:36

jejwe jejwester at gmail.com
Thu Nov 17 16:36:08 HKT 2005

setuptools,哪里下载啊,我看了你的BLOG说过之前装DJANGO的时候也是这个

在05-11-17,limodou <limodou at gmail.com> 写道:
>
> 在 05-11-17,jejwe<jejwester at gmail.com> 写道:
> > 我安装django出现
> > The required version of setuptools (>=0.6a7) is not available, and
> > can't be installed while this script is running. Please install
> > a more recent version first.
> >
> > 我下载的已经是最新的版本,为什么还会这样提示呢
> >
> django是最新的,但setuptools是最新的吗?如果不是下载最新的吧。现在最新的是0.6a8了。
> >
> >
> >
> 另,我感觉随着现在ROR的流行,这种框架越来越多的人在学习,最近看到一个。NET也出了这种框架。MonoRail,而且在很多介绍中还提到了说是类似ROR和DJANGO,看来虽然好象DJANGO当时还没发正式版,但名气已经很大了。这会不会是将来的一个流行呢。
>
> 这个不好说,跟着走吧。
>
>
> --
> I like python!
> My Blog: http://www.donews.net/limodou
> NewEdit Maillist: http://groups.google.com/group/NewEdit
>
> _______________________________________________
> Python中文技术讨论邮件列表
> 发言: 发邮件到 python-chinese at lists.python.cn
> 订阅: 发送 subscribe 到 python-chinese-request at lists.python.cn
> 退订: 发送 unsubscribe 到 python-chinese-request at lists.python.cn
> 详细说明: http://python.cn/mailman/listinfo/python-chinese
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20051117/39faf628/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 16:37

jejwe jejwester at gmail.com
Thu Nov 17 16:37:02 HKT 2005

这里找不到下载链接,英文太差了
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20051117/514cc766/attachment.htm

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 16:47

limodou limodou at gmail.com
Thu Nov 17 16:47:16 HKT 2005

在 05-11-17,jejwe<jejwester at gmail.com> 写道:
> setuptools,哪里下载啊,我看了你的BLOG说过之前装DJANGO的时候也是这个
>

There is a site named google.

--
I like python!
My Blog: http://www.donews.net/limodou
NewEdit Maillist: http://groups.google.com/group/NewEdit

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年11月17日 星期四 16:49

limodou limodou at gmail.com
Thu Nov 17 16:49:20 HKT 2005

在 05-11-17,jejwe<jejwester at gmail.com> 写道:
> 这里找不到下载链接,英文太差了

去pypi上查呀。

--
I like python!
My Blog: http://www.donews.net/limodou
NewEdit Maillist: http://groups.google.com/group/NewEdit

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号