gpt4 book ai didi

django - 如何使用 django 建立对称关系模型?

转载 作者:行者123 更新时间:2023-12-03 01:15:23 24 4
gpt4 key购买 nike

让我们用 friend 的经典例子。

class Friendship(models.Model):
user1 = models.ForeignKey(User, related_name='friends1')
user2 = models.ForeignKey(User, related_name='friends2')
handshakes = models.PositiveIntegerField()
hugs = models.PositiveIntegerField()
# other silly data

友谊中的两个 friend (user1 和 user2)应该完全平等。我应该可以说 (user1, user2) 是唯一的,不必担心 (user2, user1) 意外出现。我应该能够轻松地获取给定用户的所有 friend ,但我必须编写一个自定义管理器或创建其他某种方式来获取该用户在关系中是 user1 的所有友谊,以及其中的所有友谊该用户是 user2。

我正在考虑尝试编写自己的 SymmetricKey。请有人阻止我。

最佳答案

查看the docsManyToManyField对称选项-- 听起来它可以做你想做的事。

对于你这样做的具体方式,我会做类似的事情

class LameUserExtension(User):
friends = ManyToManyField("self", through=Friendship)

class Friendship(models.Model):
# the stuff you had here

关于django - 如何使用 django 建立对称关系模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4098718/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com