用这个框架需要先安装:
pip3 install djangorestframework
如果写了一个CBV的东西,继承了View。
# 继承Django里面View class APIView(View): pass # 订单View继承了APIView,相当于这个订单里面的功能就更多了。 class OrderView(APIView): pass
restframework
from rest_framework.views import APIView
这个APIView继承View
这个View是Django里面的View
多了些这么多功能
怎么加工request:
丰富了request一些功能,
authenticators是怎么来的---->调用self.get_authenticators(),self.get_authenticators()又是什么?
self.get_authenticators()应该先从,当前视图的类找,因为它里面传过去的self都是当前视图的类的对象。
没有才去父类找。它返回了个列表,列表里面有个列表生成式,如果self.authentication_classes是一个列表[Foo,Bar]里面表示两个类。对每个类进行了实例化。所以谁调用get_authenticators
返回的应该是[Foo,Bar]这个类的对象。
所以self.get_authenticators()是[Foo(),Bar()]
而self.authentication_classes是配置文件。是APIView里面的,从当前自己视图类找不到才去父类找,如果自己找到了呢?
如果自己找到了呢?
原文地址:https://www.cnblogs.com/zhangrenguo/p/10427574.html
时间: 2024-11-01 19:33:48