当我试图用数据保存表单时,我有这个错误。表格:
class EntityCreateForm(forms.ModelForm):
def __init__(self, chain, *args, **kwargs):
super(EntityCreateForm, self).__init__(*args, **kwargs)
self.fields['chain'] = forms.ModelChoiceField(queryset=Chain.objects.filter(pk__in = chain))
class Meta:
model = Entity
fields = '__all__'
视图:
def entity_create(request):
if request.method == 'POST':
form = EntityCreateForm(request.POST)
if form.is_valid():
form.save()
return redirect(reverse('organisation:entity-list'))
else:
chain = request.session['chain']
form = EntityCreateForm(chain)
return render (request, 'organisation/entity_form.html', {'form':form})
它出什么问题了?
您已在表单的__init__
函数中添加了意外参数。如果您没有以非标准方式使用此表单,则此参数将由Django使用POST
数据填充。要修复该错误,您必须覆盖正在使用的通用视图部分以包含该额外数据或以其他方式传递它。