我在 Django 表单集中注意到了一些东西:
每个 formset.form 都有一个隐藏字段,其中包含正在编辑的模型的 id。只需更改此 ID 并提交,默认的表单集clean()
或save()
方法不会引起注意。
我认为跟踪原始表单集查询集中的对象并在保存时比较它们不会太复杂。我想知道为什么 Django 还没有这样做?
至于我,我正在检查表单集保存的权限,例如:
if formset.is_valid():
for fs in formset:
report = fs.save(commit=False)
if can_edit(request.user, report):
report.save()
还有人注意到这个问题吗?我很想知道你是如何解决它的。