У меня странные проблемы с модулем интернационализации django. Большинство строк переведены так, как должны быть, а некоторые нет. Позвольте мне показать вам и пример:
<li>{% trans "Upload Score" %}</li>
<li>{% trans "Profile" %}</li>
<li>{% trans "Invite friends" %}</li>
<li>{% trans "Settings" %}</li>
У меня есть список из 4 пунктов для меню. Я запускаю команду django makemessages для перевода сайта на французский язык и получаю все, как и ожидалось:
#: templates/main.html:190 templates/main.html.py:195
#, fuzzy
msgid "Upload Score"
msgstr "Publier"
#: templates/main.html:191 templates/main.html.py:196
msgid "Profile"
msgstr "Profil"
#: templates/main.html:192 templates/main.html.py:197
#, fuzzy
msgid "Invite Friends"
msgstr "inviter vos amis"
#: templates/main.html:193 templates/main.html.py:198
msgid "Settings"
msgstr "Préférences"
Но когда я скомпилирую его, django-admin compilemessages переведет только «Профиль» и «Настройки». Вы знаете, откуда это могло взяться? Может ли это быть связано с использованием пробелов? Есть ли режим отладки в модуле i18n?
Спасибо за помощь! :)
РЕДАКТИРОВАТЬ: мы на django 1.4.
LANGUAGE_CODE
,USE_I18N
). Как выглядят настройки системного языка?Profile
иSettings
— это общие строки, которые можно найти в переводах, принадлежащих самому django. Я предполагаю, что ваши переводы вообще не используются из-за несоответствия языковых настроек или чего-то в этом роде. - person yedpodtrzitko   schedule 02.04.2013