淺談Django中的QueryDict元素為數(shù)組的坑
一般在Django的視圖函數(shù)中使用request.POST來獲取請求體,request.POST是QueryDict類,通常作為dict來使用。
正常如下圖
但是昨天在使用的時候遇到一個錯誤,提示從QueryDict里面pop出來的值類型為list。
一臉懵逼
在命令行敲代碼,發(fā)現(xiàn)了這個坑, 如下圖
可以看到,pop出來的值被放在的一個list里面。關(guān)鍵這個不同版本之間,行為還有所不同,就是因為在開發(fā)機器上一切正常,到了測試服務(wù)器就出問題才被發(fā)現(xiàn)的。
知道了問題,解決起來也簡單,直接調(diào)用QueryDict的dict方法,返回一個字典
補充知識:django基礎(chǔ)知識之QueryDict對象
QueryDict對象
定義在django.http.QueryDict
request對象的屬性GET、POST都是QueryDict類型的對象
與python字典不同,QueryDict類型的對象用來處理同一個鍵帶有多個值的情況
方法get():根據(jù)鍵獲取值
只能獲取鍵的一個值
如果一個鍵同時擁有多個值,獲取最后一個值
dict.get('鍵',default)
或簡寫為
dict['鍵']
方法getlist():根據(jù)鍵獲取值
將鍵的值以列表返回,可以獲取一個鍵的多個值
dict.getlist('鍵',default)
以上這篇淺談Django中的QueryDict元素為數(shù)組的坑就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux系統(tǒng)(CentOS)下python2.7.10安裝
這篇文章主要為大家詳細(xì)介紹了Linux系統(tǒng)(CentOS)下python2.7.10安裝圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-09-09如何解決pycharm中用matplotlib畫圖不顯示中文的問題
這篇文章主要介紹了如何解決pycharm中用matplotlib畫圖不顯示中文的問題,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-06-06python實現(xiàn)圖書館研習(xí)室自動預(yù)約功能
這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)圖書館研習(xí)室自動預(yù)約功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-04-04