第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Django 模型定義中,如何在一個模型中獲取該模型外鍵的字段值?

Django 模型定義中,如何在一個模型中獲取該模型外鍵的字段值?

慕虎7371278 2019-05-21 11:36:34
一個招標文件,可以招標同類型物品的多種型號。所以型號部分需要外鍵關(guān)聯(lián)至招標文件,并且根據(jù)招標文件的招標類型,來判斷哪些型號可以被選擇。fromdjango.dbimportmodelsclassBid_docu(models.Model):PRODUCT_TYPE=(('P','打印機'),('NB','筆記本電腦'),('C','臺式電腦'),)bid_number=models.CharField('招標編號',max_length=13)title=models.CharField('標題',max_length=100)tenderee=models.CharField('招標人',max_length=8)product_type=models.CharField('設(shè)備類型',max_length=5,choices=PRODUCT_TYPE)classMeta:verbose_name='招標文件描述'verbose_name_plural='招標文件描述'def__unicode__(self):returnself.bid_numberclassBid_docu_product(models.Model):bid_docu=models.ForeignKey('Bid_docu',on_delete=models.CASCADE)type=bid_docu.product_type//這行代碼總是報錯。def__unicode__(self):returnself.type報錯信息為:AttributeError:'ForeignKey'objecthasnoattribute'product_type'這是取值時的報錯
查看完整描述

2 回答

?
撒科打諢

TA貢獻1934條經(jīng)驗 獲得超2個贊

你的類命名也不規(guī)范,類命名不要有下劃線,英文單詞首字母要大寫,Bid_docu_product建議改為BidDocuProduct
列表項目type=bid_docu.product_type這一句是查找bid_docu變量,找不到自然報錯,按照語法可以改為BidDocuProduct.bid_docu.product_type,但實際能否運行還要具體看。而且你這樣寫沒有任何意義,你已經(jīng)定義了外鍵,你要獲取獲取關(guān)聯(lián)表的字段,直接BidDocuProduct.objects.first().bid_docu.product_type
                            
查看完整回答
反對 回復 2019-05-21
?
慕森卡

TA貢獻1806條經(jīng)驗 獲得超8個贊

你這樣設(shè)計數(shù)據(jù)庫就數(shù)據(jù)冗余了。Bid_docu_product沒必要保存type字段。Bid_docu_product對象如果要獲得對應的type,使用Bid_docu_product對象.bid_docu.product_type即可。
                            
查看完整回答
反對 回復 2019-05-21
  • 2 回答
  • 0 關(guān)注
  • 2484 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號