区域
编辑本页区域
我们已经看到,您可以配置使用哪些路由记录nelmio_api_doc.areas
:
1 2 3 4 5
nelmio_api_doc:领域:path_patterns:[^ / api]host_patterns:[^ \ api。]name_patterns:[^ api_v1]
但实际上,这个配置选项更强大,它允许您将文档分成几个部分。欧宝官网下载app
配置
您可以定义区域,每个区域将生成不同的文档:欧宝官网下载app
12 3 4 5 6 7 8 9 10 11 12
nelmio_api_doc:领域:默认值:path_patterns:[^ / api]host_patterns:[^ \ api。]内部:path_patterns:[^ /内部]商业:path_patterns:[^ /商业]存储:#包含名称包含“store”的路由name_patterns:[商店]
您的主要文档在欧宝官网下载app默认的
区域。它是访问时显示的那个/ api /医生
.
然后更新您的路由,以便能够访问您的不同文档:欧宝官网下载app
1 2 3 4 5 6 7 8 9 10 11
# app / config / routing.yamlapp.swagger_ui:路径:/ api / doc /{区域}方法:得到默认值:{_controller:nelmio_api_doc.controller.swagger_ui,面积:默认的}以JSON形式公开它们# app.swagger.areas:#路径:/api/doc/{area}.json#方法:GET#默认值:{_controller: nelmio_api_doc.controller。昂首阔步}
这是所有!您现在可以访问/ api / doc /内部
,/ api / doc /商业
而且/ api / doc /商店
.
在每个区域使用注释来过滤已记录的路由
你可以在你的控制器中使用“@Areas”注释来定义你的路由区域。
首先,您需要定义哪些区域将使用“@ regions”注释进行筛选
应记录的路线:
1 2 3 4 5 6
nelmio_api_doc:领域:默认值:path_patterns:[^ / api]内部:with_annotation:真正的
然后在控制器或动作之前添加注释:
12 3 4 5 6 7 8 9 10 11 12 13 14 15
使用Nelmio\注释作为Nelmio;/ * * *@Nelmio\ regions ({"internal"}) =>这个控制器中的所有动作都记录在'internal'区域*/下类MyController{/ * * *@Nelmio\ regions ({"internal"}) =>此操作被记录在'internal'区域*/下公共函数指数(){…}}
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。