Не удается заставить перевод Django работать на поле выбора - PullRequest
8 голосов
/ 13 апреля 2011

Я использую поле выбора в модели, и когда я отображаю его в шаблоне с помощью {{object.get_FIELD_display}}, оно всегда отображается на одном языке ... даже если оно переведено в po-файл.

Вот упрощенная версия моего кода:

models.py

PRODUCT_WEIGHT_UNIT = (
    ('to', _('ton')),
    ('li', _('pound')),
    ('vg', _(u'vgs³')),
)


class ProduitVrac(models.Model):
    title = models.CharField(_("Title"), max_length=50)
    unit  = models.CharField(max_length=2, choices=PRODUCT_WEIGHT_UNIT) 

шаблон

<ul>
{% for object in object_list %}
<li>
    <h2>{{ object.title }}</h2>
    {# The following will not be translated .. #}
    {{ object.get_unit_display }}
</li>
{% endfor %}
</ul>

Я что-то упустил?

1 Ответ

10 голосов
/ 13 апреля 2011

Оказывается, я использовал gettext вместо ugettext_lazy .. это решило мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...