I'm using a choice field in a model and when I display it in the template using {{ object.get_FIELD_display }}, it always shows up in the same language.. even if it's translated in the po file.
Here's a simplified version of my code:
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>
Am I missing something ?
Turns out I was using gettext instead of ugettext_lazy.. it solved my problem.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With