python Django 反向訪問器的外鍵沖突解決
我有兩個(gè)繼承一個(gè)基類的Django模型:
- Request
- Inquiry
- Analysis
請(qǐng)求有兩個(gè)外鍵到內(nèi)置用戶模型。
create_user = models.ForeignKey(User, related_name=’requests_created’)assign_user = models.ForeignKey(User, related_name=’requests_assigned’)
由于某種原因,我得到的錯(cuò)誤
“Analysis.assign_user”的反向訪問器與“Inquiry.assign_user”的反向訪問器沖突。
我讀過的所有內(nèi)容說,設(shè)置related_name應(yīng)該防止沖突,但我仍然得到相同的錯(cuò)誤。任何人都能想到為什么會(huì)發(fā)生這種情況?謝謝!
related_name將確保字段不會(huì)彼此沖突,但您有兩個(gè)模型,每個(gè)模型都有這兩個(gè)字段。你需要把每個(gè)具體模型的名字,你可以做一些特殊的 string substitution:
create_user = models.ForeignKey(User, related_name=’%(class)s_requests_created’)
補(bǔ)充知識(shí):django related_name禁用反向映射
官方文檔處理辦法:
直接將related_name賦值為加號(hào)或以加號(hào)結(jié)尾的字符串,即可實(shí)現(xiàn)禁用反向映射
以上這篇python Django 反向訪問器的外鍵沖突解決就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. django創(chuàng)建css文件夾的具體方法2. MyBatis JdbcType 與Oracle、MySql數(shù)據(jù)類型對(duì)應(yīng)關(guān)系說明3. 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法4. jsp網(wǎng)頁實(shí)現(xiàn)貪吃蛇小游戲5. CentOS郵件服務(wù)器搭建系列—— POP / IMAP 服務(wù)器的構(gòu)建( Dovecot )6. ASP中if語句、select 、while循環(huán)的使用方法7. 存儲(chǔ)于xml中需要的HTML轉(zhuǎn)義代碼8. .NET SkiaSharp 生成二維碼驗(yàn)證碼及指定區(qū)域截取方法實(shí)現(xiàn)9. ASP中實(shí)現(xiàn)字符部位類似.NET里String對(duì)象的PadLeft和PadRight函數(shù)10. 利用CSS制作3D動(dòng)畫
