APIView的使用
Posted 周建豪的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了APIView的使用相关的知识,希望对你有一定的参考价值。
APIView的使用
1.APIView的导入
? 1)安装:djangorestframework
? 2)在setting中INSTALLED_APPS中注册
‘rest_framework‘
2.APIView是基于cbv的
? 简单的使用
class BooksRestFramework(APIView):
def get(self,request):
books = models.Books.objects.all()
res = BookAll(instance=books,many=True)
return JsonResponse(res.data,safe=False)
def post(self,request):
data = request.data
res = models.Books.objects.create(name=data.get(‘name‘),price=data.get(‘price‘))
return JsonResponse({‘status‘:‘200‘})
def put(self,request,id):
data = request.data
models.Books.objects.filter(id=id).update(name = data.get(‘name‘), price = data.get(‘price‘))
return JsonResponse({‘status‘: ‘200‘})
def delete(self,request,id):
data = request.data
models.Books.objects.filter(id=id).delete()
return JsonResponse({‘status‘: ‘200‘})
? 要点:
? 1.请求中body中的数据全部都封装到了data中(原POST,PUT,PATCH,DELETE中的数据全部都封装到了data中)
? 2.地址栏中的数据及GET中的数据还是要在GET中取
? 3.APIView重新封装了request,原来的request可以在_request中取出
?
3.APIView的执行流程
? 请求-->as_view-->view-->dispatch-->分发到不同的函数然后执行
以上是关于APIView的使用的主要内容,如果未能解决你的问题,请参考以下文章