我知道我可以使用ForeignKey
的related_name
參數來控制反向引用的名稱。但是有可能避免完全創建一個反向引用?Django:使ForeignKey不創建反向引用
(例如,我有一個汽車領域的ForeignKey的(人),而我不希望人擁有,導致背對着車的屬性。)
我知道我可以使用ForeignKey
的related_name
參數來控制反向引用的名稱。但是有可能避免完全創建一個反向引用?Django:使ForeignKey不創建反向引用
(例如,我有一個汽車領域的ForeignKey的(人),而我不希望人擁有,導致背對着車的屬性。)
對於來自Google的用戶:在related_name
字段中使用+
以防止創建反向引用字段。
https://docs.djangoproject.com/en/1.10/ref/models/fields/#django.db.models.ForeignKey.related_name
你爲什麼要這麼做?如果你不想要,你不必使用它。
無論如何,反向引用只是一個代碼快捷方式 - 它完全等價於Car.objects.filter(person_id=person.id)
。
我想避免與現有屬性發生衝突。 – 2010-02-06 22:06:06
@ cool-RR。容易做到。使用'related_name'屬性給它一些非衝突的名字。 'related_name ='some_non_conflicting_name''。 – 2010-02-07 02:49:04
這是一個簡單的解決方法,我同意。但是我正在尋找一種根本沒有後向參照的方法。 – 2010-02-07 09:02:41