簡體   English   中英

Django:related_name反向訪問器

[英]Django: related_name Reverse accessor

我有一個模型,其中InstitutePerson是Person的子類。

    • 研究所人員
  • 項目

在項目中:

participants_institite = models.ManyToManyField(InstitutePerson, blank = True, null = True)
participants_exterior = models.ManyToManyField(Person, blank = True, null = True)

我收到一個錯誤:

Project.participants_institute: (fields.E304) Reverse accessor for 'Project.participants_institute' clashes with reverse accesor for 'Project.participants_exterior'.

我以為related_name可以解決問題,但是在看到一些帖子之后( related_name參數在Django模型中無法正常工作? ),由於類之間的繼承,我不確定如何繼續。

使用related_name arg並手動定義它https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.ForeignKey.related_name

如果您有兩個具有相同類型的M2M字段,則Django無法自動在目標modela上生成屬性。

如果您不在相反的方向上,您可以簡單地選擇

models.ManyToManyField(..., related_name='+r1') models.ManyToManyField(..., related_name='+r2')

暫無
暫無

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

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