我正在通過Tango使用Django書籍,並決定添加一些我自己的功能,但有一個問題。Django:將一個模型的字段鏈接到另一個字段
我有兩個型號,類別和頁面
class Category(models.Model):
name = models.CharField(max_length=128, unique=True)
views = models.IntegerField(default=0)
likes = models.IntegerField(default=0)
slug = models.SlugField(unique=True)
class Page(models.Model):
category = models.ForeignKey(Category)
title = models.CharField(max_length=128)
url = models.URLField()
views = models.IntegerField(default=0)
現在我想要做的是使該類別該類別中的「意見」字段的所有頁面的意見和
在我的測試數據庫腳本人口,我做這種方式:
cats = {"Python": {"pages": python_pages,
"views": sum(page["views"] for page in python_pages),
},
"Django": {"pages": django_pages,
"views": sum(page["views"] for page in django_pages),
},
"Other Frameworks": {"pages": other_pages,
"views": sum(page["views"] for page in other_pages),
}
}
該方法適用於填充數據庫,但我會如何讓這個類別「意見」更新w ^每當頁面「views」字段改變?
例如,如果同一類別的「視圖」中的兩個不同頁面增加一個,那麼類別的「視圖」會增加兩個?
你確定你可以在設置您的分類相關對象的集合做想要這樣做,而不是在實際需要時計算視圖? –
@DanielRoseman不一定,我真正唯一的要求是當「頁面」視圖上升時讓「類別」視圖更新。我沒有設定任何特定的方式 –