получить данные или запись из БД в формате JSON Django - PullRequest
0 голосов
/ 28 января 2020

У меня есть эта модель

class Pharmacy(models.Model):
name = models.CharField(max_length = 256)
contact = models.CharField(max_length = 15)
city = models.CharField(max_length = 20)
address = models.TextField()
lat = models.FloatField()
long = models.FloatField()

def __str__(self):
    return self.name

это views.py

def PharmacyJsonList(request):
data = serializers.serialize('json',Pharmacy.objects.all())
return JsonResponse({'data':data})

результат в этом формате enter image description here

Мне нужны только поля в формате json без этих slushes Могу ли я сделать это в Class Base View?

Ответы [ 2 ]

0 голосов
/ 28 января 2020

По вашему мнению, после сериализации набора запросов просто верните свой ответ в HttpResponse с помощью content_type="application/json".

from django.http import HttpResponse

def PharmacyJsonList(request):
    data = serializers.serialize('json',Pharmacy.objects.all())
    return HttpResponse(data, content_type='application/json'))

. Другой способ - использовать values() с набором запросов, а затем отправить ответ по * 1006. *

from django.http import JsonResponse

def PharmacyJsonList(request):
    data = list(Pharmacy.objects.values())
    return JsonResponse({'data': data})
0 голосов
/ 28 января 2020

Попробуйте это

return JsonResponse({'data': Pharmacy.objects.all()})
...