2014-05-13 67 views
0

我在保持父对象的modification_date处于最新状态时遇到问题。我希望父母的modification_date字段与孩子的modification_date字段同时更新。同时更新来自不同型号的两个字段

class Parent(models.Model): 
    modification_date = models.DateTimeField(auto_now=True) 
    note = models.ManyToManyField('Child') 

class Child(models.Model): 
    modification_date = models.DateTimeField(auto_now=True) 
    content = models.TextField() 

我正在使用Django。

回答

1

我会做post_save信号功能。因此,每次更新儿童模型时,都会触发该功能,您可以更改父母模型:

from django.db.models.signals import post_save 

# method for updating 
def update_parent(sender, instance, **kwargs): 
    parent = Parent.object.get() #the parent you need to update 
    parent.modification_date = instance.modification_date 
    parent.save() 

# register the signal 
post_save.connect(update_parent, sender=Child) 
相关问题