我有一个日期,传递为2019-01-01T00:02
。我的目标是用空格2019-01-01 00:02
替换T。在
使用表单,我验证了该字段和其他字段
klientForm = KlientForm(json.loads(request.body.decode()))
bokningForm = BokningForm(json.loads(request.body.decode()))
if klientForm.is_valid() and bokningForm.is_valid():
#Save model, etc.
我使用的是DateTimeField
,除非我像上面那样更改它,否则它将不接受日期。我实现了自己的clean()方法
这成功地将它转换为datetime对象,我使用print(cleaned_data)
进行了检查
我的问题是数据返回得很晚,因为(我认为)bokningForm.is_valid()
已经失败,导致模型没有被保存。在
我尝试使用clean_pumpStart(self):
,就像在Django Forms中一样,但是当{
感谢任何帮助!在
Clean data在is_有效之前运行,因为Clean是django运行以验证表单的许多方法之一
因为您只清洁一个区域,请使用“清洁”来清洁此区域
在你看来,也许这可以锻炼身体
^{pr2}$编辑:在其他帖子中得到了一些有用的信息。。。尝试在模型内部使用clean方法,看起来这是先运行的
来源:Django: Model clean method called before form clean
你不需要做这些。相反,您应该重新定义字段本身,提供^{} 属性:
现在Django将自动转换该值,作为自己验证过程的一部分。在
注意,如果您所做的是验证JSON,那么您可能希望使用Django REST框架及其序列化程序,而不是普通的Django表单。在
相关问题 更多 >
编程相关推荐