我实质上是在django中创建一个博客应用程序,以此作为学习绳子和提高django技能的一种方式。我基本上在管理站点中遇到多对多关系。我有两种主要类型,Article和ArticleTag。许多文章可以属于许多ArticleTag,并且该关系应该是双向的,以便能够从任一侧“遵循”该关系。

我遇到的问题是,在管理面板中,当我去创建一个新的Article时,不允许我创建一个新的Article,而不创建一个新的ArticleTag,这不能在不创建新的ArticleTag的情况下创建,等等。 。如何使它们正常工作并且是可选的?另外,是否有一种相当简单的方法来创建一个控件,以方便按堆栈溢出或Delicious.com进行标记?我是管理员系统的新手:)

最佳答案

您忘记在blank=True声明中指定ManyToManyField

class Article(models.Model):
    tags = models.ManyToManyField(ArticleTag, blank=True,
        related_name="articles")



  另外,是否有一种相当简单的方法来创建一个控件,以方便按堆栈溢出或Delicious.com进行标记?


没有内置功能,但是有几个用于Django的附加库可以进行标记。其中之一可能符合您的需求。

关于python - Django管理中的多对多问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3561508/

10-10 21:17