drf_yasg.openapi:在DjangoRestFramework项目中生成中文接口文档的 实践
发布时间:2023-12-27 02:40:24
在DjangoRestFramework项目中生成中文接口文档的 实践包括以下几个步骤:
1. 安装 drf_yasg库:在项目的虚拟环境中,使用以下命令安装 drf_yasg库:
pip install drf_yasg
2. 配置Swagger设置:在项目的 settings.py 文件中添加以下配置:
INSTALLED_APPS = [
...
'drf_yasg',
...
]
SWAGGER_SETTINGS = {
'DEFAULT_INFO': 'api.views.api_info', # 接口文档的基本信息
}
3. 创建接口文档视图:在项目的 views.py 文件中,创建一个视图函数来返回接口文档的基本信息,例如:
from drf_yasg import openapi
from drf_yasg.views import get_schema_view
from drf_yasg.inspectors import SwaggerAutoSchema
schema_view = get_schema_view(
openapi.Info(
title="接口文档",
default_version='v1',
description="这是一个接口文档示例",
),
public=True,
permission_classes=[permissions.AllowAny],
generator_class=SwaggerAutoSchema,
)
4. 配置URL映射:在项目的 urls.py 文件中,添加如下URL映射以将接口文档的URL与视图函数进行绑定:
from django.urls import path
from .views import schema_view
urlpatterns = [
... # 其他URL映射
path('docs/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'),
]
5. 运行项目并查看接口文档:使用以下命令启动Django项目:
python manage.py runserver
然后,在浏览器中访问http://127.0.0.1:8000/docs/即可查看生成的中文接口文档。
通过上述步骤,你可以很容易地在DjangoRestFramework项目中生成中文接口文档。在生成接口文档时,你可以根据实际需求添加更多的配置项,例如认证、权限控制等。
以下是一个简单的示例,展示了如何在DjangoRestFramework项目中生成中文接口文档:
# views.py
from drf_yasg import openapi
from drf_yasg.views import get_schema_view
from drf_yasg.inspectors import SwaggerAutoSchema
schema_view = get_schema_view(
openapi.Info(
title="接口文档",
default_version='v1',
description="这是一个接口文档示例",
),
public=True,
permission_classes=[permissions.AllowAny],
generator_class=SwaggerAutoSchema,
)
# urls.py
from django.urls import path
from .views import schema_view
urlpatterns = [
# 其他URL映射
path('docs/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'),
]
上述示例中,我们创建了一个标题为“接口文档”,版本号为“v1”的接口文档,并且添加了一个简单的描述。然后,将接口文档的URL映射到 schema_view 视图上。启动Django服务器后,你可以访问http://127.0.0.1:8000/docs/来查看生成的接口文档。
