Serializer(instance=None, data=empty, **kwarg)
api.tulingxueyuan.com/student/?name='liu'
# 使用案例
name = self.request.query_params.get('name', None)
- user
- 登录后的用户信息都在user中
- 如果没有登录,则是anoymous
- 可以用来判断用户是否登录成功Responserest_framework.response.Response用Renderer渲染器对返回内容进行渲染
REST_FRAMEWORK = {
'DEFAULT_RENDERER_CLASSES': ( # 默认响应渲染类
'rest_framework.renderers.JSONRenderer', # json渲染器
'rest_framework.renderers.BrowsableAPIRenderer', # 浏览API渲染器
)
}
- 返回的构造方式
- return Response(data, status=None, template_name=None, headers=None, content_type=None)
- data: 返回的数据
- status: 返回的状态码
- 1xx: 信息告知
- 2xx: 成功
- 3xx:重定向
- 4xx: 请求错误
- 5xx: 服务器错误视图类APIViewrest_framework.views.APIView是django中View的子类跟View有不同的地方传入传出数据用的是drf的请求和反馈类会引发并处理APIException在dispatch之前,会进行身份验证,权限检查,流量控制支持的属性有authentication_classes: 列表或者元祖,身份验证类 permisson_classes: 进行权限验证throttle_classes:流量控制类对API的访问提供了一些方便HTTP-Method + 名词默认对HttpMethod常用方法提供了支持案例: views - StudentAPIView
- GenericAPIView
- APIView的子类
- 支持的属性
- queryset:查询结果集
- serializer_class: 视图使用的序列化器
- panination_class: 分页控制器
- filter_backends: 过滤器后端
- lookup_field:查询条件字段,默认为pk
- get_queryset: 返回查询结果集集合,经常需要重写
- get_serializer_class:得到序列化器类
- get_serializer: 得到序列化器ListModelMixinlist(reqeust, *args, **kwargs) CreateModelMixincreate(requst, *args, **kwargs) RetrieveModelMixinretrieve(...............) UpdateModelMixinupdate(..........)DestroyModelMixindestroy(.......)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。