我在translation.py中有一个字典和函数,我从views.py。
调用Translation.py: -
from django.utils.translation import ugettext
english_strings = {
"key1" :
{
"key2":ugettext("val1"),
"key3":ugettext("val2"),
"key4":ugettext("val3"),
.
.
}
}
def get_string():
return english_strings
所有键和val都是有效字符串。我正在尝试本地化。所有的val都需要本地化。所以我需要打电话给' ugettext'在所有的val。 在上面的例子中,django-admin.py makemessages -a'命令会自动将val添加到' locale / de / LC_MESSAGES / django.po'并且它正常工作。
但是我不想在字典里面写ugettext(在每个val之前)。相反..
def get_string():
temp = {}
for key,val in english_strings.items():
for k, v in val.items():
temp[k] = ugettext(v)
return temp
这就是我想要的。但在第二种情况下" django-admin.py makemessages -a"没有将val添加到' locale / de / LC_MESSAGES / django.po'。所以它不起作用。但是函数正在返回键值对。任何建议,将不胜感激。 提前谢谢。