Wir*_*one 3 symfony symfony-routing
当我们定义routing.yml:
my_controllers:
resource: "@MyBundle/Controller/"
type: annotation
prefix: /
Run Code Online (Sandbox Code Playgroud)
和:
my_api:
resource: 'MyBundle\Controller\ApiController'
type: rest
prefix: /api
name_prefix: my_api_
options:
expose: true
Run Code Online (Sandbox Code Playgroud)
我们得到重复的路线NelmioApiDoc:

我们应该如何做到这一点,以便路由ApiController不会重复?
ApiController从"通配符"资源导入中排除?您在Nelmio ApiDoc中获得重复的条目,因为Symfony中实际存在重复的路由.执行此命令以查看Symfony中的每个路由,包括您的API(将显示/api前缀和不带前缀):
php app/console router:debug
Run Code Online (Sandbox Code Playgroud)
正如Yann建议的那样,我认为最好的方法是为您的API控制器(类似的东西@MyBundle/ControllerRest/)创建一个单独的目录并将它们放在那里.然后,不要忘记更新API控制器中的名称空间和my_api部分routing.yml名称下的资源路径.
这样你就可以摆脱重复的路线,因此ApiDoc只会显示每个呼叫一个路由,而不是两个.
| 归档时间: |
|
| 查看次数: |
1184 次 |
| 最近记录: |