我有一个模板文件templates/admin/base_site.html
,其中包含一个trans
代码:{% trans "Event List" %}
。
settings.py
包括:
LANGUAGE_CODE = 'sv'
LOCALE_PATHS = (
'/srv/mysite/locale/',
)
除trans
标记中的文字外,Django-admin页面已正确翻译为瑞典语。
当我运行python manage.py makemessages -l sv
时,它会正确生成一个locale/sv/LC_MESSAGES/django.po
文件,其最后几行是:
#: templates/admin/base_site.html:9
msgid "Event List"
msgstr "Event List"
然后我将其更改为:
#: templates/admin/base_site.html:9
msgid "Event List"
msgstr "Händelselista"
当我再次运行python manage.py runserver
时,字符串不会在网页上翻译。
管理页面的其余部分仍然会像以前一样翻译成瑞典语。
我错过了什么?
答案 0 :(得分:1)
django.po
个文件仅用于编辑目的。您必须将它们编译为django.mo
个文件,以便对它们进行解释:
python manage.py compilemessages
另见Django docs。
答案 1 :(得分:0)
你重启了网络服务器吗?如果你没有,它将不会提供新编译的po文件。
编辑并确保在您执行完毕后重新启动Django服务器。