我如何 return 来自 Pandas DataFrame 的数据被 Django 的 JsonResponse return 编辑?

How do I return data from Pandas DataFrame to be returned by Django's JsonResponse?

这个问题的答案可能很简单,但经过几个小时的搜索,我真的找不到。

我正在尝试使用 pandas 数据帧中的 Django return JsonResponse。我尝试过的许多事情之一如下:

from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt
import pandas as pd

@csrf_exempt
def do_request(request):
    result = pd.DataFrame({'bla':[1,2,3],'bla2':['a','b','c']}).to_json(orient='records')
    return JsonResponse(result, safe = False)

以下结束 returning:

"[{\"bla\":1,\"bla2\":\"a\"},{\"bla\":2,\"bla2\":\"b\"},{\"bla\":3,\"bla2\":\"c\"}]"

实际上我想要它 return:

'[{"bla":1,"bla2":"a"},{"bla":2,"bla2":"b"},{"bla":3,"bla2":"c"}]'

您需要将 python 个对象(例如字典或列表)作为 JsonResponse 数据传递。但是 to_json return 字符串。所以尝试解析它:

import json

@csrf_exempt
def do_request(request):
    result = pd.DataFrame({'bla':[1,2,3],'bla2':['a','b','c']}).to_json(orient='records')
    return JsonResponse(json.loads(result), safe = False)