我正在研究一個應該支持不同語言和風格的應用程序,如美國,英國和德國。Django日期格式的本地化
現在看documentation,例如,似乎沒有美國日期格式的直接支持。看來這部分需要手工完成。
所以我不停地挖成的文檔,發現this:
{{ value|date:"D d M Y" }}
這似乎並不與形式雖然是工作,當我想這在我的代碼:
{{form.birth_date|date:"D d M Y"}}
似乎格式化需要在表單字段本身進行設置。
更多的研究顯示了類似的問題被問在#1 2009:
該解決方案可以工作,但看起來很搞這樣一個簡單的問題。自2009年以來,Django已經走過了很長的一段路,所以我想知道是否有更好的方式直接進入ModelForm?
讓我們說我們有下面的代碼:
型號:
class ConversationHistory(models.Model):
contact_date = models.DateField(_(u"Conversation Date"))
表:
class ConversationForm(ModelForm):
class Meta:
model = ConversationHistory
我能不能添加以下的ModelForm:
widgets = { 'contact_date': forms.DateInput(format='M d, Y') }
這是正確的本地化方式嗎?如果我想將格式更改爲Brtish英語或德語,該怎麼辦?所以,我有我缺少的東西在這裏的感覺...
非常感謝,
UPDATE:
現在我已經試過這樣:
widgets = { 'contact_date': forms.DateInput(format='SHORT_DATE_FORMAT') }
但日期顯示爲SHORT_DATE_FORMAT。
我錯過了什麼?
也許[SHORT_DATE_FORMAT(https://docs.djangoproject.com/en/dev/ref/settings/#std%3asetting-SHORT_DATE_FORMAT) – jpic 2012-07-11 09:41:44
@jpic請看我最新的問題。謝謝 – Houman 2012-07-11 16:34:40