我正在尝试使用Django管理员删除内联模型。我收到错误说
[你们选择一个有效的选择。这个选择不是可用的选择之一。']
我检查引发异常的位置。似乎删除了内联模型,然后在父模型上进行了表单验证,删除的内联模型仍然是表单的值。这导致了失败。
在我的管理模型中,我定义了save_formset
方法,称为formset.save(commit=False)
。 commit=False
没有告诉Django不删除相关模型吗?
感谢。
答案 0 :(得分:2)
快速查看代码后,似乎是formset save
方法调用
save_existing_objects
,即使commit
为False
,也会删除实例。
文档saving objects in the formset未指定在指定commit=False
时标记为删除的对象会发生什么。它只是说:
传递
commit=False
以返回未保存的模型实例: