用 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" } ]
广告