路由
urlpatterns = [
path('api/<str:version>/user/', views.UserView.as_view(),name='user'),
]
settings
REST_FRAMEWORK = {
# 版本配置
"DEFAULT_VERSIONING_CLASS": "rest_framework.versioning.QueryParameterVersioning",
"DEFAULT_VERSION": "v1",
"ALLOWED_VERSIONS": ["v1"],
"VERSION_PARAM": "version",
}
view
from rest_framework.versioning import URLPathVersioning
class UserView(OrPermissionAPIView):
versioning_class = URLPathVersioning
def get(self, request, *args, **kwargs):
print('request.version', request.version)
url = request.versioning_scheme.reverse(viewname='user', request=request)
print('url', url)
return Response({'status': 'UserView'})