【问题标题】:How can I exclude rest-auth endpoint from the Django built-in API documentation?如何从 Django 内置 API 文档中排除 rest-auth 端点?
【发布时间】:2020-09-03 03:21:39
【问题描述】:
要在 Django 文档中隐藏端点,只需将 @schema(None) 添加到 GenericAPIView,但是这两个 url 有问题:
url(r'^rest-auth/', include('rest_auth.urls')),
url(r'^rest-auth/registration/', include('rest_auth.registration.urls')),
我无法添加 @schema(None) 装饰器,因为我没有为这些 url 声明视图。任何想法如何解决它?
【问题讨论】:
标签:
python
django
django-rest-framework
swagger
django-rest-auth
【解决方案1】:
我想出的解决方案:
(vf, app_name, namespace) = include('rest_auth.urls')
vf.LoginView = schema(None)(vf.LoginView)
vf.LoginView = schema(None)(vf.LogoutView)
vf.LoginView = schema(None)(vf.PasswordChangeView)
vf.LoginView = schema(None)(vf.PasswordResetConfirmView)
vf.LoginView = schema(None)(vf.PasswordResetView)
vf.LoginView = schema(None)(vf.UserDetailsView)
(vf_registration, app_name_registration, namespace_registration) = include('rest_auth.registration.urls')
vf_registration.RegisterView = schema(None)(vf_registration.RegisterView)
vf_registration.TemplateView = schema(None)(vf_registration.TemplateView)
vf_registration.VerifyEmailView = schema(None)(vf_registration.VerifyEmailView)
urlpatterns = [
url(r'^rest-auth/', (vf, app_name, namespace)),
url(r'^rest-auth/registration/', (vf_registration, app_name_registration, namespace_registration)),
]