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信號?