我想通过Django中的窗体更新对象,但在视图中执行form.save()
之前,我想对数据执行一些条件。你知道吗
例如:
ire = get_object_or_404(Ire, id_IRE=pk)
if request.method == 'POST':
form = IreForm(request.POST or None, instance=ire)
if form.is_valid():
if ire.get_att1()==form.cleaned_data.get('att1') and ire.get_att2()==form.cleaned_data.get('att2'):
form.save(update_fields=['type']) #just update the field type
else:
form.save() #create a new object
在我看来,当我这样做的时候,第一个条件是有效的,但是当我改变形式中的att1或att2时,它不会做任何改变。你知道吗
请帮助我如何在保存前做条件!!!你知道吗
谢谢,我找到了一个解决方案,它存储了在执行更新操作之前要更新的对象的值:
这就是我解决问题的方法,因为我发现在调用表单模型之后,对象的值与我在调用之前输入的值同时改变表单保存你知道吗
相关问题 更多 >
编程相关推荐