python response.json()报错_解决Django响应JsonResponse返回json格式数据报错问题
解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報(bào)錯(cuò)問題,給大家,報(bào)錯(cuò),代碼,圖書,希望能
解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報(bào)錯(cuò)問題
易采站長站,站長之家為您整理了解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報(bào)錯(cuò)問題的相關(guān)內(nèi)容。
代碼
return JsonResponse({"name": "tom"})
報(bào)錯(cuò):
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,使其接受列表
補(bǔ)充知識(shí):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ù)報(bào)錯(cuò)問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持易采站長站。以上就是關(guān)于對(duì)解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報(bào)錯(cuò)問題的詳細(xì)介紹。歡迎大家對(duì)解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報(bào)錯(cuò)問題內(nèi)容提出寶貴意見
總結(jié)
以上是生活随笔為你收集整理的python response.json()报错_解决Django响应JsonResponse返回json格式数据报错问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 黑暗之魂全系列介绍-黑暗之魂世界观名词篇
- 下一篇: 疯狂脑洞大开全关怎么过 疯狂脑洞大开全关