簡體   English   中英

外鍵與Django Model中的相關字段發生沖突

[英]Foreign Keys clash with related field in Django Model

我正在研究一個模型類,它將代表一個家庭成員與另一個家庭成員的關系(一部分基因學特征)

我的班級是:

class FamilyLink(models.Model):
    from_legacy = models.ForeignKey(Legacy)
    to_legacy = models.ForeignKey(Legacy)

    class Meta:
        unique_together = ("from_legacy", "to_legacy")

當我嘗試遷移時,我收到以下錯誤消息:

CommandError:一個或多個模型未驗證:archive.familylink:字段'from_legacy'的訪問者與相關字段'Legacy.familylink_set'沖突。 將related_name參數添加到'from_legacy'的定義中。 archive.familylink:字段'to_legacy'的訪問者與相關字段'Legacy.familylink_set'發生沖突。 將related_name參數添加到'to_legacy'的定義中。

看來我的問題是在同一個類中有兩個foreignKey都指向同一個類(在本例中是“Legacy”類)。 有誰知道如何解決/解決這個問題?

我很欣賞這些想法和專長。

錯誤消息非常明確:

class FamilyLink(models.Model):
    from_legacy = models.ForeignKey(Legacy, related_name = 'familylink_from_legacy')
    to_legacy = models.ForeignKey(Legacy, related_name = 'familylink_to_legacy')

默認情況下,如果沒有related_name屬性被設置,relatedname設置為familylink_set以及由於來自同一關系2個不同的領域,它導致的問題。

此處閱讀related_name屬性的更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM