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