0
在Django我有兩個型號Post
和Tag
。我有一個ManyToManyField
他們每個人都指向另一個。但是,當我添加新的Post
並提供一些標記時,只有post -> tag
關係記錄在數據庫中。我必須手動添加tag -> post
關係。Django的許多一對多的關係對稱不同類型
有沒有辦法讓Django的自動做到這一點?
在Django我有兩個型號Post
和Tag
。我有一個ManyToManyField
他們每個人都指向另一個。但是,當我添加新的Post
並提供一些標記時,只有post -> tag
關係記錄在數據庫中。我必須手動添加tag -> post
關係。Django的許多一對多的關係對稱不同類型
有沒有辦法讓Django的自動做到這一點?
您也可以參考在ManyToManyField
使用related_name
。它更清晰,更易於理解。
class Post(models.Model):
tag = models.ManyToManyField(Tag, related_name="post")
那麼你通過 tag.post.all()
使用它你爲什麼要在這兩種模式中定義的多到多場?這聽起來不對。你只需要在一個(可能是'Post'模型)上定義它,並且根據定義,這種關係是雙向的。 – solarissmoke
啊我明白了。我沒有意識到我可以通過做tag.post_set.all()來查詢帖子。 – zrbecker