在保存

时间:2017-04-17 21:22:05

标签: python django

我有一个三明治模型,其中包含一份成分属性列表(多对多关系,所以我可以看到三明治使用成分,反之亦然)。我还有一个字段has_dairy,我想根据检查成分的属性来保存模型。遗憾的是,覆盖save方法不会削减它,因为在没有先保存的情况下无法检查多对多字段的值。否则,你会收到错误。

ValueError: "<Sandwich: test sandwich>" needs to have a value for field "sandwich" before this many-to-many relationship can be used.

理想情况下,我可以保存,更新has_dairy并再次保存,但在save方法中调用super(Sandwich, self).save(*args, **kwargs)两次会抛出完整性错误,因为它期望未保存的状态。

如何实现这一目标?

0 个答案:

没有答案