forms.py:
select_time = forms.DateTimeField(
label='时间',
input_formats=['%m/%d/%YT%H:%M'],
widget=forms.DateTimeInput(attrs={
'class': 'weui-input',
'type': 'datetime-local',
'emptyTips': '请选择时间'
})
)
上面這個表單,傳遞的時間格式是 2017-05-25T23:10
,無法透過 form.is_valid()
校驗,請問如何處理呢?
傳入的資料是
2017-05-25T23:10
,而你的input_formats=['%m/%d/%YT%H:%M']
,也就是说input_formats
写错了,正确的应该是input_formats=['%Y-%m-%dT%H:%M']
。你的 form 裡定義的格式是
%m/%d/%YT%H:%M
但是你传的却是2017-05-25T23:10
當然無法通過校驗啦,需要修改 form 裡的格式定義。按 strftime(format) 方法,你要的input_formats格式應是
%Y-%M-%D/T%H:%M
關於strftime(format) 方法,見文檔8.1.8的第一表格,該格式是從C語言來的,挺通用的。