【发布时间】:2019-06-03 17:04:16
【问题描述】:
编辑:我的 `class ProviderUpdateView(UpdateView) 的 def form_invalid:
def form_invalid(self, form):
print("form is invalid")
print(form.errors)
return HttpResponse("form is invalid.. this is just an HttpResponse object")
我可能会提出第二个问题,以弄清楚为什么这没有在表单上呈现,但有些“必须填写此字段是”可能与脆的表单有关,不确定我没有写这部分并且有调查一下:/
我有一个在 ajax 调用的数据字段中遇到的日期字段。我可以在我的views.py中很好地获取数据
dateJ = request.GET.get('date_joined_group')
这很棒,但是当我尝试将它扔进我的模型时,它每次都会死掉。我需要“清理”数据,当我只是在执行标准的 get post ops 工作并自动执行此操作时,我知道我的表单。有没有一种方法可以在不使用表单内容而是使用 ajax 调用时调用这个自动魔法?
我试过了:
dateObj = datetime.datetime.strptime(str(dateJ), '%m-%d-%Y')
然后在我的模型中:
grpProvInfo.date_joined_group = dateObj
grpProvInfo.save()
这很有效,直到我在表单上使用日期选择器,将其输入为 2009 年 4 月 29 日
所以斜线破坏了我的“巧妙修复”,必须是一种更简单的方法,然后尝试考虑所有可能性,只是不确定如何从我的 python 中的 ajax 调用的一个小 def 方法调用它。
【问题讨论】:
-
最简单的方法是在字符串进入之前修改它,或者在它到达你的时候用这样的东西修改字符串。
dateJ.replace('/', '-') -
这很好用,我必须弄清楚如何在 javascript 端进行验证并将错误发送到所有内置于 django 的表单:(
-
不要那样做。表单本身应该能够通过字段的
input_formatsattribute 接受多种格式。
标签: javascript ajax django django-forms