我无法强制 django 翻译字符串,从请求中选择的语言是正确的,但我没有翻译的字符串。
\n\n也许这里可能有问题:当我运行 shell 时,返回的值language_code与我的不相等settings.py
gettext = lambda s: s\nUSE_I18N = True\nUSE_L10N = True\nLANGUAGE_CODE = \'en\'\n\nLANGUAGES = (\n (\'cs\', gettext(\'Czech\')),\n (\'en\', gettext(\'English\')),\n)\n\n>>> from django.utils import translation\n>>> \n>>> translation.get_language()\n\'en-us\'\n>>> from django.conf import settings\n>>> settings.LANGUAGE_CODE\n\'en\'\nRun Code Online (Sandbox Code Playgroud)\n\n我的消息文件位于locale/cs/LC_MESSAGES/django.{mo,po}\ni 中,其中包含以下内容(翻译后的周短名称缩写):
msgid "Mo Tu We Th Fr Sa Su"\nmsgstr "Po \xc3\x9at St \xc4\x8ct P\xc3\xa1 So Ne"\nRun Code Online (Sandbox Code Playgroud)\n\n看来,当我得到正确的值“cs”时
\n\nprint get_language() \n\'cs\'\nRun Code Online (Sandbox Code Playgroud)\n\n下一行是ugettext
ugettext(\'Mo Tu We Th Fr Sa Su\')\n\'Mo Tu We Th …Run Code Online (Sandbox Code Playgroud)