我怎样才能有两个外键在Django相同的模型?

我想有两个外键到同一个模型:

class Test(models.model): example1 = models.ForeignKey(Example) example2 = models.ForeignKey(Example) 

我得到如下错误:

字段“example1”的访问器与相关字段“Example.test_set”冲突。 将一个related_name参数添加到“example1”的定义中。

Django使用了一些python魔术来定义模型之间的关系,其中一些涉及在关系中使用模型的名称(这就是'test__set'中的'test'来自哪里)。我猜想,发生了什么试图在示例模型中放置“test__set”两次,为每个已定义的外键添加一次。

错误消息提示要尝试:定义可以使用的related_name参数(重写其中一个“test_set”),而不是自动生成两个碰撞名称。

更多信息在这里

尝试使用related_name

 class Test(models.model): example1 = models.ForeignKey('Example', related_name='example1') example2 = models.ForeignKey('Example', related_name='example2') 

只要做错误消息告诉你要做的事情,如果你不确定这意味着什么,请查阅有关related_name的文档。