使用 django的ORM方法查询数据,转成json。(暂没试value_list,它返回的是元组形式的queryset,没有写自定义函数来处理)
def mydownlist(request):
# list = Filelist.objects.all()
# responce = serializers.serialize("json", list)
# return HttpResponse(responce)
list1 = Filelist.objects.values('intime', 'filename','status')
response = JsonResponse({"status":"ok","data":dictFetchOrm(list1)})
response['Access-Control-Allow-Origin'] = '*'
return response
自定义函数如下:
#生成字典格式方法--适用于django 原生sql查询
def dictFetchAll(cursor):
desc = cursor.description
return [
dict(zip([col[0] for col in desc], row))
for row in cursor.fetchall()
]
#生成json格式--适用于orm查询的办法
def dictFetchOrm(para):
resDic=[]
for i in para:
resDic.append(i)
return json.dumps(resDic,ensure_ascii=False)
原生使用:
from django.http import HttpResponse,JsonResponse
def users(request):
cursor = connection.cursor()
cursor.execute("select * from users")
tmpres = dictFetchAll(cursor)
data = {
"code":0,
"data": tmpres,
}
return JsonResponse(data)