Django模型:多对多还是多对一?

knu*_*uck 4 django django-models

我只是在学习django并遵循教程.我有一个链接和一个书签.与我正在关注的教程不同,我希望链接只与一个书签相关联,但书签可以有多个链接.这是设置模型的方法吗?

class Link(models.Model):
    url = models.URLField(unique=True)
    bookmark = models.ForeignKey(Bookmark)

class Bookmark(models.Model):
    title = models.CharField(maxlength=200)
    user = models.ForeignKey(User)
    links = models.ManyToManyField(Link)
Run Code Online (Sandbox Code Playgroud)

小智 6

否.links从书签模型中删除,并访问您将使用的特定书签的链接对象bookmark.link_set.all()(其中书签是特定的书签对象).Django为你填充反向关系.

或者,如果您这样选择,请在ForeignKey中提供您自己的相关名称bookmark,例如"链接",如果您不喜欢"link_set".