假设我们有以下类:
类"配置">
class Config(models.Model):
name = models.CharField(max_length=40, editable=True, blank=False, null=False)
nodes = models.ManyToManyField(HierarchyNode_MPTT)
element = models.ForeignKey(ForecastConfigurationLayout, on_delete=models.PROTECT, default=None)
nodes
属性表示 M:N 关系。我想根据nodes
的组合默认elements
属性。因此,在保存过程中(理想情况下是pre_save
(,我需要将所有节点传递给返回element
uuid
的类/方法。
因此,我转到管理应用程序,创建一个类型为Config
的对象,在屏幕上选择我的节点并点击保存。现在,系统应该调用一个类/方法,传递节点并使用uuid
更新element
。这是行不通的,因为映射表中Class
和Nodes
之间的 M:N 关系还没有正确的条目(因为它是pre_save
(。我想避免post_save
因为这样nodes
属性需要允许Null
值。
任何想法都非常感谢。
谢谢 塞巴斯蒂安
我在post_add
动作中使用m2m_changed
信号。 适用于我的用例。