1
關係,我有自引用多對多領域的典範:緩存多對多「自我」在Django
class Suite(models.Model):
suites = models.ManyToManyField("self", related_name="parents",
summetrical=False
)
顯示套房列表的當前使用率取「master_suites」(套房,具有零列表父母),並從遞歸地開始「suite.subsuites.all()」開始,直到所有人都用盡。
目前的方式是爲每個這樣的套件生成一個數據庫查詢,我想向它添加緩存。
整個過程可以通過首先加載套房列表來完成,Suite.objects.all();和一個子套件列表:Suite.subsuites.through.all()並使用這兩個數據集來構造樹。
我想將此「邏輯」添加到ManyRelatedManager,緩存Suite.subsuites.through.all()結果,並在視圖中的循環期間使用緩存。
但我發現沒有辦法設置自己的自定義ManyRelatedManager ...我該怎麼做?