2010-11-12 36 views
1

我在HTML模板和views.pyforms.pymodels.py文件中都有一个带有翻译字符串的网站。 Django为我的第二语言创建了django.po文件,并且我输入了大部分翻译。但是,我的.html和view.py文件中只有翻译出现在网站上。其他人似乎被忽略(models.py,forms.py - 都默认为英文)为什么Django只显示我的一些翻译

发生了什么事?

我明显编译了我的django.mo文件,这是行得通的 - 否则大量的模板字符串将不会被翻译 - 为什么它忽略我的models.py翻译。无论是在管理网站还是前端。

一个想法是在django.mo文件中可能会导致文件中断。有没有办法测试django.mo文件的错误?如果出现错误,它可以工作吗?

我的项目也安装了Django-cms,这可能会导致一些冲突?

谢谢你的光棚。

盖伊

回答

2

1.确保你总是在的.mo文件模式和形式定义

2.取出可能fuzzy tags使用ugettext_lazy(不ugettext)。

+0

简单 - _lazy和_lazy之间有什么区别呢?这使得它的工作... – 2010-11-12 15:17:28

+0

'_lazy'版本翻译EVERYTIME字符串被访问,正常版本只有一次代码运行,这只发生在django的启动ONCE上的表单和模块! – 2010-11-12 15:23:24

相关问题