python - type="datetime-local" 的 input 如何通過(guò) django form.is_valid() 校驗(yàn)
問(wèn)題描述
forms.py:
select_time = forms.DateTimeField( label=’時(shí)間’, input_formats=[’%m/%d/%YT%H:%M’], widget=forms.DateTimeInput(attrs={’class’: ’weui-input’, ’type’: ’datetime-local’, ’emptyTips’: ’請(qǐng)選擇時(shí)間’ }))
上面這個(gè)表單,傳遞的時(shí)間格式是 2017-05-25T23:10,無(wú)法通過(guò) form.is_valid() 校驗(yàn),請(qǐng)問(wèn)如何處理呢?
問(wèn)題解答
回答1:傳入的數(shù)據(jù)是 2017-05-25T23:10,而你的 input_formats=[’%m/%d/%YT%H:%M’],也就是說(shuō) input_formats 寫錯(cuò)了,正確的應(yīng)該是 input_formats=[’%Y-%m-%dT%H:%M’]。
回答2:你的 form 里定義的格式是 %m/%d/%YT%H:%M 但是你傳的卻是 2017-05-25T23:10 當(dāng)然無(wú)法通過(guò)校驗(yàn)啦,需要修改 form 里的格式定義。
回答3:按 strftime(format) 方法,你要的input_formats格式應(yīng)是 %Y-%M-%D/T%H:%M關(guān)於strftime(format) 方法,見(jiàn)文檔8.1.8的第一表格,該格式是從C語(yǔ)言來(lái)的,挺通用的。
相關(guān)文章:
1. 跟著課件一模一樣的操作使用tp6,出現(xiàn)了錯(cuò)誤2. PHP類屬性聲明?3. angular.js - 這是什么錯(cuò)?誰(shuí)遇到過(guò)?給點(diǎn)提示4. transform - css3 translate 的水平垂直居中問(wèn)題求解5. angular.js - angular里的ui-view里,獲取當(dāng)前頁(yè)面的狀態(tài)參數(shù)用$state.params,在vue里類似的語(yǔ)法是什么呢?6. javascript - 安裝了babel,不起作用7. vue.js - nginx怎么修改跨域配置?8. css - div外層有一圈白色9. node.js - 初次安裝vue-cli遇到的問(wèn)題10. 前端 - 應(yīng)該先從angularJS , vue.js , react 這些框架中的哪個(gè)開(kāi)始入手?
