我正在使用Django 1.7& Python 2.7和我正在使用模型表单。
我有一个模板,允许以某种方式使用日期格式:
DATE_INPUT_FORMATS = (
'%m. %Y', # mm. yyyy (. and two space separator).
'%m. %Y', # mm. yyyy (. and one space separator).
'%m.%Y', # mm.yyyy (dot separator).
'%m-%Y', # mm-yyyy (dash separator).
'%Y.%m', # yyyy.mm (dot separator).
'%Y/%m', # yyyy/mm (forward slash separator).
'%Y-%m', # yyyy-mm (dash separator).
'%m/%Y', # mm/yyyy (forward slash separator) (default date format).
)
我已将模型表单设置为允许日期字段的输入格式为:
input_formats = {
'award_grant_date': settings.DATE_INPUT_FORMATS,
}
但上述代码始终返回输入错误,并输入有效日期。'
所以我做了一些SO线程的阅读,并在模型表单的init中输入以下代码行,以使日期输入正常工作:
self.fields['award_grant_date'].input_formats = (settings.DATE_INPUT_FORMATS)
所以我的问题是:为什么表单模型的input_formats不起作用,但表单模型的init中的代码确实有效?这可能是一个简单的答案,但我找不到文档或SO帖子中的答案。