Django 是一個基于 Python 的開發框架,很多人選擇它是因為它可以輕松地與數據庫交互,但是對于初學者來說,如何將數據庫中的數據以 JSON 格式返回是一個比較困惑的問題,本文將介紹如何使用 Django 返回 JSON 格式的數據。
首先,我們首先需要在我們的模型中定義一個序列化器,這個序列化器將幫助我們將我們的數據轉換為 JSON 格式,下面給大家展示定義序列化器的代碼:
from rest_framework import serializers from .models import ExampleModel class ExampleSerializer(serializers.ModelSerializer): class Meta: model = ExampleModel fields = ('id', 'name', 'description', 'created_at', 'updated_at')
在上述代碼中,我們使用 ModelSerializer 來定義我們的序列化器,并說明了需要包含在返回 JSON 中的字段。
接下來,我們需要在視圖中導入我們的序列化器,并使用它來轉換我們的數據。下面給大家展示使用序列化器的代碼:
from django.http import JsonResponse from rest_framework.views import APIView from .models import ExampleModel from .serializers import ExampleSerializer class ExampleListAPIView(APIView): def get(self, request): examples = ExampleModel.objects.all() serializer = ExampleSerializer(examples, many=True) return JsonResponse(serializer.data, safe=False)
在上述代碼中,我們將 ExampleModel 的所有數據查詢出來,并使用 ExampleSerializer 將其轉換為 JSON 格式,并使用 JsonResponse 將 JSON 數據返回。
最后,我們需要將我們的視圖鏈接到我們的 URL 上,下面給大家展示如何將視圖與 URL 鏈接:
from django.conf.urls import url from .views import ExampleListAPIView urlpatterns = [ url(r'^examples$', ExampleListAPIView.as_view(), name='example-list'), ]
可以看到,我們使用 URLConf 將我們的視圖鏈接到 URL。
總之,從上述代碼可以看出,使用 Django 返回 JSON 格式的數據是非常簡單的,只需要定義一個序列化器來轉換數據,并在視圖中使用它即可,希望這篇文章對廣大讀者有所幫助。
上一篇c 拼接空json
下一篇python 爬蟲餓了嗎