如何用django实现级联模型更新?

Max*_*ulo 1 django

拥有以下型号:

class Comercio(models.Model):
    nombre = models.CharField(max_length=50)
    modify_date = models.DateTimeField(auto_now=True, auto_now_add=True)

class Menu(models.Model):
    comercio = models.ForeignKey(Comercio, blank=False)
    # Other fields here
    nombre = models.CharField(max_length=32)

class Item(models.Model):
    menu = models.ForeignKey(Menu, blank=False)
    # Other fields here
    nombre = models.CharField(max_length=32)
Run Code Online (Sandbox Code Playgroud)

每当相关的菜单或项目之一发生变化时,在Comercio上更新"modify_date"的正确方法是什么?

mco*_*lin 6

我会使用Django中内置的信号框架:Doco在这里找到

有了它,你可以在模型B上添加仅在更新或保存模型A时发生的操作.实际上它是非常好的东西.

这是一个老答案,有一个例子