0
我有一个简单的Django模型,如:如何更新父Django的模型时,孩子修改
class Parent(models.Model):
fresh = models.BooleanField(default=True)
class Child(models.Model):
parent = models.ForeignKey(Parent)
<other fields>
我在管理这些设置,使孩子记录下父显示为内联:
class ChildInline(admin.TabularInline):
model = Child
class ParentAdmin(admin.ModelAdmin):
inlines = [ChildInline]
如何配置这个功能,以便当用户创建,更新或删除子记录时,它会设置parent.fresh = False
?
我试着简单地覆盖孩子的save()方法,但这在admin中不起作用,因为它首先保存孩子,然后保存父记录,这会覆盖孩子对父母做出的任何修改。
我也尝试设置客户post_save信号,但效果是一样的。它在孩子保存后执行的信号,但不保存父母之前执行的信号,因此这些更改仍会被覆盖。
还有别的办法吗?是否有一些post_admin_save信号?