1
我在我的应用程序中有一个ModelForm,我想在其中修改init函数以添加一些自定义。Django - 在窗体__init__中调用超级窗体在“GET”窗体上启动窗体验证
当初始化被注释掉,然后表单工作并正确验证。当我覆盖初始化并转到表单渲染的url时,它会自动显示“Field xyz is required”
问题的原因是什么?
class CreateListView(FormMixin, ListView):
def get_context_data(self, **kwargs):
self.object_list = self.get_queryset()
data = super(ListView, self).get_context_data()
data['object_list'] = self.get_queryset()
data['form'] = self.get_form(self.form_class)
return data
def post(self, request, *args, **kwargs):
form = self.form_class(request.POST)
if form.is_valid():
form = form.save()
return HttpResponseRedirect(form.get_absolute_url())
return self.form_invalid(self.get_context_data())
class ActionGroupForm(forms.ModelForm):
class Meta:
model = ActionGroup
def __init__(self, *args, **kwargs):
super(ActionGroupForm, self).__init__(args, kwargs)
哇我完全失明! :D感谢您的帮助! :) – Efrin