在我的python代码中,我有一堆标记为要翻译的字符串。
例如:
remarks_sample = forms.CharField(
label = _('Remarks'),
widget = forms.Textarea(attrs = {
'placeholder': _("Remarks"),
})
)我已经成功地运行了django-admin.py makemessages并翻译了Rosetta admin中的短语。我在试着弄清楚为什么翻译后的短语没有出现在我的页面上。
发布于 2013-05-11 00:08:06
这些文件实际上是由django-rosetta写入的吗?如果Rosetta无法将内容写回.po文件(例如,因为web服务器进程无法写入),它只会将它们保存在内存中(您可以下载您的翻译,并替换文件)。
此外,在重新启动read服务器之前,您可以运行django-admin.py compilemessages显式地将更新后的.po文件编译成.mo文件,由Django读取。
另外,_是ugettext还是ugettext_lazy的别名?它可能应该是后者。
发布于 2013-05-10 21:27:07
如果您使用的是开发服务器,则必须重新启动它,因为它本身不会检测到更新的翻译。
如果您使用的是生产服务器,您可能希望告诉rosetta自动重新加载(请参阅:Rosetta Configuration)。
https://stackoverflow.com/questions/16481589
复制相似问题