最全的 “Django“ 类视图 APIView GenericAPIView Mixin 快速实现增删改查

本文详细介绍了Django中APIView, GenericAPIView及其Mixins的使用,包括如何创建模型类、序列化器、接口配置和Vue页面。讲解了GenericAPIView的属性和方法,以及ListView、DetailView的实现。同时,讨论了CreateModelMixin、RetrieveModelMixin等用于增删改查的Mixins,通过实例展示了它们如何简化CRUD操作。最后,提到了通用类视图generics和子类视图的使用。" 41255081,1164052,微软亚洲研究院面试体验与反思,"['面试经验', '操作系统', '图论', '数据结构', '算法']
摘要由CSDN通过智能技术生成

APIView (一级类视图)

1.创建模型类
#部门表
class Dept(models.Model):
    name = models.CharField(max_length=30)
    t_number = models.IntegerField()

    def __str__(self):
        return self.name

    class Meta:
        db_table='dept'
        
#生成迁移文件
python manage.py makemigrations
#迁移到数据库
python manage.py migrate
2.写序列化器
from rest_framework import serializers
from .models import Dept

#部门序列化器
class DeptSer(serializers.ModelSerializer):
    class Meta:
        model=Dept
        fields='__all__'
3.写接口
from django.shortcuts import render
from rest_framework.views import APIView
from rest_framework.response import Response
from .models import Dept
from .serilizers import DeptSer

# Create your views here.
#获取所有部门信息
class DeptList(APIView):
    #查询所有部门
    def get(self,request):
        deptlist = Dept.objects.all()
        dept = DeptSer(deptlist,many=True)
        return Response(dept.data)
    #添加部门
    def post(self,request):
        ser = DeptSer(data=request.data)
        if ser.is_valid():
            ser.save()
        else:
            print(ser.errors)
        return Response('ok')
4.配制路由
from meiduo import views
urlpatterns = [
    path('deptlist/', views.DeptList.as_view()),
]
5.创建vue页面
<template>
    <div>
        <table>
            <tr>
                <td>名称</td>
                <td>人数</td>
            </tr&
  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值