首页 > 解决方案 > many2many 到同一个模型,但不是它本身,也不是多次

问题描述

嘿嘿!

我有一个模型通过“self”引用相同的模型,这通常可以工作,但我希望它不与“自身”连接。因此,假设 topic1 无法连接到 topic1(这没有任何意义),我不希望将 topic1 多次连接到 topic2。它应该只是数据库中的一次 topic1-topic2。

# views.py 

related_topic = models.ManyToManyField(
        "self",
        # TODO: constraint in m2m! not with itself, not in both directions.
        verbose_name="Related Topic",
        blank=True,
        related_name="related_topic"
    )

我发现symmetric=False在两个方向上都没有连接,这很有帮助,但还不够。

有谁知道如何实现这一目标?

非常感谢!

标签: djangodjango-modelsmany-to-manydjango-orm

解决方案


推荐阅读