Django {%trans%} 不工作,尽管生成 django.po
Django {%trans%} not working, despite django.po being generated
我有一个模板文件 templates/admin/base_site.html
,其中包含一个 trans
标签:{% trans "Event List" %}
.
settings.py
包括:
LANGUAGE_CODE = 'sv'
LOCALE_PATHS = (
'/srv/mysite/locale/',
)
Django 管理页面已正确翻译成瑞典语,trans
标记中的文本除外。
当我 运行 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
时,网页上的字符串没有翻译。
管理页面的其余部分仍像以前一样翻译成瑞典语。
我错过了什么?
您是否重新启动了网络服务器?如果没有,它不会提供新编译的 po 文件。
编辑: 并确保在您完成后重新启动 Django 服务器。
django.po
文件仅用于编辑目的。您必须将它们编译成 django.mo
个文件,以便它们被解释:
python manage.py compilemessages
另见 Django docs。
我有一个模板文件 templates/admin/base_site.html
,其中包含一个 trans
标签:{% trans "Event List" %}
.
settings.py
包括:
LANGUAGE_CODE = 'sv'
LOCALE_PATHS = (
'/srv/mysite/locale/',
)
Django 管理页面已正确翻译成瑞典语,trans
标记中的文本除外。
当我 运行 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
时,网页上的字符串没有翻译。
管理页面的其余部分仍像以前一样翻译成瑞典语。
我错过了什么?
您是否重新启动了网络服务器?如果没有,它不会提供新编译的 po 文件。
编辑: 并确保在您完成后重新启动 Django 服务器。
django.po
文件仅用于编辑目的。您必须将它们编译成 django.mo
个文件,以便它们被解释:
python manage.py compilemessages
另见 Django docs。