我有这个代码
class ObjectCreate(CreateView):
def form_valid(self, form):
我想知道这个表单是否已经绑定到对象实例,我可以使用 form.save 或者我必须手动将它绑定到模型实例
我有这个代码
class ObjectCreate(CreateView):
def form_valid(self, form):
我想知道这个表单是否已经绑定到对象实例,我可以使用 form.save 或者我必须手动将它绑定到模型实例
是的,里面的表格form_valid
是绑定的。
您可以通过查看ProcessFormView
.
def post(self, request, *args, **kwargs):
form_class = self.get_form_class()
form = self.get_form(form_class)
if form.is_valid():
return self.form_valid(form)
可以看到绑定的表单是由 实例化的self.get_form(form_class)
,form_valid
只有表单有效时才会调用该方法。
请注意,默认情况下ModelFormMixin
使用的CreateView
保存对象 - 根据您尝试执行的操作,您可能不必覆盖form_valid
.
您可以参加 form 课程并要求bounded:
form_class = self.get_form_class()
if form.is_bound:
...