解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報錯問題
代碼
return JsonResponse({"name": "tom"})
報錯:
TYPEERROR: In order to allow non-dict objects to be serialized
set the safe parmeter to False
解決:
return JsonResponse({"name": "tom"}, safe=False)
增加safe=false,使其接受列表
補充知識:python 里面 JsonResponse (book_list,safe=False)
代碼為:
# 查詢所有圖書 、 增加圖書
def get(self,request):
queryset = BookInfo.objects.all()
book_list = []
for book in queryset:
book_list.append({
'id':book.id,
'bread':book.bread
})
return JsonResponse (book_list,safe=False)
遇到問題:
JsonResponse (book_list,safe=False)
safe=False 這是什么鬼 ?
解決方案:
down 下源碼后 :
def __init__(self, data, encoder=DjangoJSONEncoder, safe=True,
json_dumps_params=None, **kwargs):
if safe and not isinstance(data, dict):
raise TypeError(
'In order to allow non-dict objects to be serialized set the '
'safe parameter to False.'
)
if json_dumps_params is None:
json_dumps_params = {}
kwargs.setdefault('content_type', 'application/json')
data = json.dumps(data, cls=encoder, **json_dumps_params)
super(JsonResponse, self).__init__(content=data, **kwargs)
最終答案:
'In order to allow non-dict objects to be serialized set the ' 'safe parameter to False.'
以上這篇解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報錯問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
跟老齊學(xué)Python之用while來循環(huán)
while,翻譯成中文是“當(dāng)...的時候”,這個單詞在英語中,常常用來做為時間狀語,while ... someone do somthing,這種類型的說法是有的。2014-10-10
用Python中的wxPython實現(xiàn)最基本的瀏覽器功能
這篇文章主要介紹了用Python中的wxPython實現(xiàn)基本的瀏覽器功能,本文來自于IBM官方網(wǎng)站開發(fā)者文檔,需要的朋友可以參考下2015-04-04
pycharm出現(xiàn)了pytest模式下如何改回run模式
這篇文章主要介紹了pycharm出現(xiàn)了pytest模式下如何改回run模式問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
使用python采集腳本之家電子書資源并自動下載到本地的實例腳本
這篇文章主要介紹了python采集jb51電子書資源并自動下載到本地實例教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-10-10
pytorch載入預(yù)訓(xùn)練模型后,實現(xiàn)訓(xùn)練指定層
今天小編就為大家分享一篇pytorch載入預(yù)訓(xùn)練模型后,實現(xiàn)訓(xùn)練指定層,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01

