如何在每次更新中设置表单的默认值?



我想在表单中设置一个默认值,它将在每次更新中重置为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')

最新更新