-
View是Django默认的视图基类,APIView是REST framework提供的所有视图的基类, 继承自Django的View。
-
APIView与View的不同之处在于:
1.传入到视图方法中的是REST framework的Request对象,而不是Django的HttpRequeset对象; 2.视图方法可以返回REST framework的Response对象,视图会为响应数据设置(render)符合前端要求的格式; 3.任何APIException异常都会被捕获到,并且处理成合适的响应信息;APIException异常捕获 4.在进行dispatch()分发前,会对请求进行身份认证、权限检查、流量控制
1.View部分代码手动实现增改查
view.py
import json
from django.http import HttpResponse
from django.shortcuts import render
# Create your views here.
from django.views import View
from .models import User
class UserView(View):
def post(self, request):
name = request.POST.get('name')
password = request.POST.get('password')
size = request.POST.get('size')
user_obj = User.objects.filter(name=name)
if user_obj:
return HttpResponse("用户已存在")
else:
User.objects.create(
name