如何让一些作者在博客中发帖

时间:2018-03-09 08:53:53

标签: python django

下午好!现在我正在使用django上的博客。但我不明白你怎么能这样做,这样你就不能把这个帖子的作者,而是两个,三个,四个等等。非常感谢你

2 个答案:

答案 0 :(得分:1)

您正在寻找Many To Many关系。 通常,它会创建第三个表,用于链接两个表之间的每个ManyToMany关系。见normalization。但是在编码时你并不关心真实的"实施

编辑:在你的情况下,你可以在Article表中使用4或5个字段,并在没有5个作者的情况下将它们设置为null。这取决于有多少作者可以撰写文章。

答案 1 :(得分:1)

为此你必须使用多对多的关系。让你的模特就像..

models.py

class Author(models.Model):
    user = models.OneToOneField(User)
    ....

class Blog(models.Model):
    title = models.CharField(max_length=500)
    body = models.TextField()
    authors = models.ManyToManyField(Author, related_name="blogs")
    ...

现在,如果您有博客对象,则可以通过调用blog.authors.all()获取博客的所有作者。如果您有作者对象,则可以通过调用author.blogs.all()

获取作者的所有博客