如何设置端点以使用Django REST Swagger发布

时间:2019-02-28 23:38:39

标签: python django django-rest-framework swagger django-rest-swagger

我有一个使用 Django Rest Framework 的大型API REST项目,我想用 Django REST Swagger 进行文档记录,但是我想要这个 Swagger 文档,仅包含整个项目的某些端点。

这是我的urls.py,在我的项目中设置了 Swagger

from rest_framework_swagger.views import get_swagger_view

urlpatterns = i18n_patterns(
    path('api-token-auth/', views.obtain_auth_token),
    path('', include('FrontEndApp.urls')),
    path('admin/', admin.site.urls),
    path('api-auth/', include('rest_framework.urls')),
    path('docs/',get_swagger_view(title="Intellibook API")),
    path('rosetta/', include('rosetta.urls')),
    path('general/', include('GeneralApp.urls')),
    path('operations_manager/', include('OperationsManagerApp.urls')),
    path('payments_manager/', include('PaymentsManagerApp.urls')),
    #path('providers_manager/', include('ProvidersManagerApp.urls')),
    path('rates_manager/', include('RatesManagerApp.urls')),
    path('reports_manager/', include('ReportsManagerApp.urls')),
    path('reservations_manager/', include('ReservationsManagerApp.urls')),
    path('users_manager/', include('UsersManagerApp.urls')),
    path('excursions_manager/', include('ExcursionsManagerApp.urls')),
    path('invoices_manager/', include('InvoicesManagerApp.urls'))
)

当前, Swagger 发布整个项目中所有urls.py中的所有端点。我想将其设置为仅在项目的应用程序的ursl.py中发布端点。

1 个答案:

答案 0 :(得分:0)

查看

SWAGGER_SETTINGS = {
    "exclude_namespaces": [],    #  List URL namespaces to ignore
}

很遗憾,我找不到文档。但是,如果我做对了,您应该将urlpatterns分成两部分,一部分用于发布,第二部分用于非发布。