def的版本管理

1,安装

pip install djangorestframework

2,配置

2.1,注册app

"rest_framework"

2.2,全局配置

# 不是必须的,看需要填写
REST_FRAMEWORK = {
    "VERSION_PARAM": "version",
    "DEFAULT_VERSION": "v1",
    "ALLOWED_VERSION": ["v1", "v2", "v3"],
    "DEFAULT_VERSIONING_CLASS": "rest_framework.versioning.QueryParameterVersioning"
    # "DEFAULT_VERSIONING_CLASS": "rest_framework.versioning.URLPathVersioning"
}

3,使用CBV模式

path('api/', views.UserView.as_view()),
from rest_framework.views import APIView
from rest_framework.response import Response


class UserView(APIView):

    def get(self, request):
        print(request.version)
        return Response({"code": 1000, "data": "xxx"})

    def post(self, request):
        return Response({"code": 1000, "data": "xxx"})

4,api版本管理

"VERSION_PARAM": "version", # 版本参数名称
 "DEFAULT_VERSION": "v1", # 默认版本
 "ALLOWED_VERSION": ["v1", "v2", "v3"], # 版本限制
  "DEFAULT_VERSIONING_CLASS": "rest_framework.versioning.QueryParameterVersioning"  # 默认处理类 请求后面携带版本参数
    # "DEFAULT_VERSIONING_CLASS": "rest_framework.versioning.URLPathVersioning" # path('api/<str:version>/users/', views.UserView.as_view()),

posted @ 2022-07-30 19:16  下个ID见  阅读(23)  评论(0)    收藏  举报