Django的翻譯使用的選擇字段不會發生..Django的翻譯與格式()不工作
models.py:
class Reservation(models.Model):
class Period:
MORNING = 'morning'
EVENING = 'evening'
@classmethod
def choices(cls):
return (
(cls.MORNING, _('Morning')),
(cls.EVENING, '{} until {:%I %p}'.format(_('Evening'), datetime.time(16)),
)
period = models.CharField(max_length=10, choices=Period.choices(),)
我使用{{reservation.get_period_display}}在模板以幾種語言顯示該字段。對於第一選擇cls,轉換是很好的.MORNING:الصباح。 對於第二選擇(cls.EVENING),翻譯不會發生:「傍晚到下午4點」
任何人都可以提示我格式說明符有什麼問題,以及爲什麼翻譯/本地化在這種情況下不起作用。
N.B:翻譯和i18n安裝正確,我的項目中的其他地方正確顯示翻譯值。
什麼是'_'?它是'ugettext_lazy'還是非懶惰版本? – RemcoGerlich
_ is ugettext_lazy version –
您是否解決了您的問題? –