Python 2.7 中是否可以使用新的推荐方法来格式化字符串format
导致 Django 中出现未翻译的字符串?
字符串位于.po
文件已翻译,但不会在网站上翻译。例如:
from django.utils.translation import ugettext as _
website_name = "Stackoverflow"
title = _(u"{sitename} is a good website".format(sitename=website_name))
The .po
翻译字符串后的文件如下所示:
#: path/to/file.py:4
msgid "{sitename} is a good website"
msgstr "{sitename} ist eine gute Website"
运行后django-admin.py compilemessages
并重新启动网络服务器,在处理后的 HTML 页面上它仍然是英文,而所有其他字符串正在被翻译。此外,虽然所有字符串都使用format
未翻译,字符串格式使用%
运算符按预期翻译。这也不是 gettext/ugettext 问题,因为这两个函数的问题是相同的。
compilemessages
将该字符串视为“{sitename} 是一个很好的网站”,但当应用程序运行时,该字符串实际上是例如“MySite 是一个很好的网站”,当然没有翻译。您必须先翻译裸字符串,然后then您可以对其进行模板操作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)