我有一个Model和ModelForm,如:
from django.utils.translation import ugettext_lazy as _
class Item(models.Model):
category = models.CharField(
max_length=256,
choices=(
('car', _("Cars")),
('computers', _("Computers")),
('furry animal', _("Furry or large animals")),
))
class ItemForm(ModelForm):
class Meta:
model = Item
我已正确编目,翻译和编译字符串,{% trans "Cars" %}
按预期显示翻译文本。
现在,如果我将ItemForm
和Item
的实例传递给模板,并将其用作{{ form }}
和{{ item.category }}
,我是否正确认为他们不会默认显示本地化选项?
将它们本地化的最简洁和最简单的方法是什么?
答案 0 :(得分:2)
你自己试过吗?
我很确定他们会进行本地化。至少{{ form }}
,而您希望使用{{ item.get_category_display }}
来获取category
字段的显示值(即“毛茸茸或大型动物”/“Pelzige oder grosse Tiere”(本地化)而不是“毛茸茸的动物”(内部字符串))。