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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Django:添加 ForeignKey limit_choices_以關(guān)聯(lián)另一個(gè)或相同的

Django:添加 ForeignKey limit_choices_以關(guān)聯(lián)另一個(gè)或相同的

紅顏莎娜 2021-06-09 17:46:10
這是我的代碼。std_name = models.ForeignKey(StudentInfo, on_delete=models.CASCADE)def get_std_class_name(self):   return int(self.std_name.std_subject_class.std_class_name_N)def limit_subject_std_choices():   return {'std_subject_class__std_class_name_N':'get_std_class_name' }subject_name = models.ForeignKey(StdSubject,on_delete=models.CASCADE, limit_choices_to=limit_subject_std_choices)但顯示錯(cuò)誤。ValueError at /admin/results/studentinfo/1/change/ 以 10 為基數(shù)的 int() 的無效文字:'get_std_class_name'我不知道我的代碼有什么問題。我想當(dāng)任何學(xué)生在任何科目上打分時(shí),都會(huì)以她的班級(jí)名稱為基礎(chǔ)顯示科目。我只是想從這個(gè)模型實(shí)例中獲取學(xué)生班級(jí)信息并在這個(gè)函數(shù)中傳遞一個(gè)值。def limit_subject_std_choices():       return {'std_subject_class__std_class_name_N':'get_std_class_name'}
查看完整描述

1 回答

?
達(dá)令說

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊

Django doc of 中limit_choices_to,值應(yīng)該是dict帶有表達(dá)式 askey和值 asdict value

在您的情況下,您正在嘗試為模型中的每個(gè)實(shí)例查找值,這是不可能的

那么在你的情況下有什么可能?

std_subject_class__std_class_name_N期待PK值,(一個(gè)整數(shù)值),所以你應(yīng)該通過一個(gè)有效的整數(shù)

subject_name = models.ForeignKey(StdSubject, on_delete=models.CASCADE,
                                 limit_choices_to={'std_subject_class__std_class_name_N': 123})



查看完整回答
反對(duì) 回復(fù) 2021-06-22
  • 1 回答
  • 0 關(guān)注
  • 139 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

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