实现在侧连接

时间:2011-06-11 08:35:41

标签: django django-models

如何在Django模型中实现端口连接? 说,我想实现“友谊”机制,即,如果你将我加入你的朋友列表,这并不意味着你在我的朋友列表中。 我试着用

models.ManyToManyField("self")

但在这种情况下,双方的友谊得以实现。

1 个答案:

答案 0 :(得分:1)

制作另一个模特:

class Friendship(models.Model):
    user = models.ForeignKey(User, related_name="friends")
    friend = models.ForeignKey(User, related_name="opposite_friends")

现在你可以像这样查询:

someuser.friends.all() # all your friends
someuser.opposite_friends.all() # users that have you as a friend