我在使用django的gettext
翻译字符串时遇到了一个奇怪的问题:在本地运行dev服务器,所有翻译都在管理员中正确显示,但是当项目部署在生产服务器上时某些字符串根本没有翻译。我无法确定哪些系统背后哪些字符串受影响,哪些不受影响!
给你一个印象,例如。模型定义如下:
class Company(models.Model):
....
class Meta:
verbose_name = _('Company Profile')
verbose_name_plural = _('Company Profiles')
使用dev服务器,模型名称在管理员中以不同语言正确显示,而不是在生产服务器上!这会影响一些模型,有些则不会......这让我很疯狂,因为我几乎不知道如何调试这个......
答案 0 :(得分:7)
一些可能性:
fuzzy
ugettext
而不是ugettext_lazy
答案 1 :(得分:3)
我有类似的问题,除了Tomasz Zielinski指出我必须做出以下改变:
在settings.py 中
LOCALE_PATHS = (
"/path/to/your/project/locale",
)
记住尾部斜杠并确保目录结构类似于:
project
your_app
your_other_app
locale
en_US
LC_MESSAGES
sv_SE
LC_MESSAGES