我想在表单中设置一个默认值,它将在每次更新中重置为approval = False
。我尝试了一些东西,但它没有工作,它没有改变。我怎样才能修好它?
forms.py
class UpdateDoaTableForm(forms.ModelForm):
approval = forms.BooleanField(required=False,
initial=False,
label='Approved',
widget=forms.HiddenInput()
)
class Meta:
model = DoaTable
fields = ('limit', 'approval')
views.py
def update_limit(request, id):
limiting = get_object_or_404(DoaTable, id=id)
form = UpdateDoaTableForm(request.POST or None, request.FILES or None, instance=limiting)
limiting_item = DoaTable.objects.filter(id=id)
if form.is_valid():
form.save()
return redirect('approvals:update_limit_list')
context = {
'form': form,
'limiting_item': limiting_item,
}
return render(request, 'limitUpdate.html', context)
models.py
class DoaTable(models.Model):
...
approval = models.BooleanField(default=False)
我编辑了我的代码,现在它正在工作:
views.py
if form.is_valid():
update_form = form.save(commit=False)
update_form.approval = False
update_form.save()
return redirect('approvals:update_limit_list')