真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

DjangoModelChoiceField中修改過濾查詢集queryset的兩種方法分別是什么

本篇文章為大家展示了Django ModelChoiceField中修改過濾查詢集 queryset的兩種方法分別是什么,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)從2013年成立,先為銅官等服務(wù)建站,銅官等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為銅官企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

Django Form類定義中有一個 ModelChoiceField  對應(yīng)的是Model 的外鍵,queryset 是返回一個查詢集對象

例如,我有一個Form

class BookForm(forms.Form):
    books = forms.ModelChoiceField(queryset=Books.objects.all())

這似乎并沒有什么問題。

但是我想要傳遞books的id,就出現(xiàn)了問題。我們可以如下解決。

1、重寫init方法并接受新的關(guān)鍵字

def __init__(self,*args,**kwargs):
    id = kwargs.pop('id',None)
    super(BookForm,self).init(*args,**kwargs)
form = BookForm({'id':1})

2. 在視圖中修改queryset對象

form = BookForm()
form.fields['books'].queryset = Books.objects.filter(id=1).all()

如果要設(shè)置默認(rèn)值可以通過{initial={'id':1}的方法進(jìn)行。

上述內(nèi)容就是Django ModelChoiceField中修改過濾查詢集 queryset的兩種方法分別是什么,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


標(biāo)題名稱:DjangoModelChoiceField中修改過濾查詢集queryset的兩種方法分別是什么
文章鏈接:http://weahome.cn/article/jsidce.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部