用 2 行程式碼將 Django 模型資料轉為 JSON 資料


在本文中,我們將學習一個巧妙的技巧,直接將 Django 模型資料轉換為 JSON 資料。有時,我們需要以 JSON 格式返回模型資料;還可以將其用於製作 API,或者只是以 JSON 格式將簡單資料顯示給我們的前端。JSON 易於訪問,因此確實很有用。

示例

建立 Django 專案和應用。

settings.py 中,在 INSTALLED_APPS 中新增應用名稱。

在專案主目錄的 urls.py 中,新增以下行 −

from django.contrib import admin
from django.urls import path,include

urlpatterns = [
   path('admin/', admin.site.urls),
   path('',include('modeltojson.urls'))
]

這裡我們添加了我們應用的 urls.py

在應用的 urls.py 中,新增以下行 −

from django.urls import path
from . import views
urlpatterns = [
   path('',views.home,name="home")
]

這裡我們渲染了我們的 home 檢視,很簡單。

models.py 中,新增以下行 −

from django.db import models

# Create your models here.
class EmployeeData(models.Model):
   name=models.CharField(max_length=100)
   Salary=models.CharField(max_length=100)
   department=models.CharField(max_length=100)

這裡,我們建立了我們的模型並新增一些用於測試和嘗試的虛擬資料。

admin.py 中,新增以下行 −

from django.contrib import admin
from .models import EmployeeData

# Register your models here.
admin.site.register(EmployeeData)

這裡,我們只是將我們的 EmployeeData 模型註冊到管理員頁面。

views.py 中,新增以下行

from django.http import JsonResponse
from .models import EmployeeData
# Create your views here.
def home(request):
   data=list(EmployeeData.objects.values())
   return JsonResponse(data,safe=False)

這裡,我們使用模型資料的 .value() 函式建立了所有鍵值列表,然後將其渲染為 JSON 響應。

現在一切完成,別忘了新增一些隨機資料。

輸出


[
   {
      "id": 1,
      "name": "Ross Taylor",
      "Salary": "1 lakh",
      "department": "Technical"
   },
   {
      "id": 2,
      "name": "Rohit Sharma",
      "Salary": "2 lakh",
      "department": "Sales"
   },
   {
      "id": 3,
      "name": "Steve Smith",
      "Salary": "3 lakh",
      "department": "Sales"
   }
]

更新於: 25-8-2021

2K+ 瀏覽

開始你的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.