annotations.yaml 中控制器的多个子目录
Multiple subdirectories for controllers in annotations.yaml
我正在尝试在 Symfony 5.3 应用程序中更多地组织我的控制器。它们位于几个子目录中,并为它们的路由使用注释。以下是一些示例:
- ../src/StuffA/Controller/ControllerA.php
- ../src/StuffB/Controller/ControllerB.php
我现在想在 annotations.yaml
中指定两者。我尝试了几种方法,但找不到任何有效的方法:
通配符 - 不起作用
controllers:
resource: '../../src/*/Controller'
type: annotation
多路径 - 不起作用
controllers:
resource: '../../src/{StuffA,StuffB}/Controller'
type: annotation
单一路径 - 有效但仅适用于一个控制器
controllers:
resource: '../../src/StuffA/Controller'
type: annotation
关于我做错了什么的任何提示?
只需创建多个资源密钥。
例如:
# annotations.yaml
controllersFoo:
resource: ../../src/Foo/Controller/
type: annotation
controllersBar:
resource: ../../src/Bar/Controller/
type: annotation
我认为您不能在注解加载器中使用通配符或 glob 模式。
我正在尝试在 Symfony 5.3 应用程序中更多地组织我的控制器。它们位于几个子目录中,并为它们的路由使用注释。以下是一些示例:
- ../src/StuffA/Controller/ControllerA.php
- ../src/StuffB/Controller/ControllerB.php
我现在想在 annotations.yaml
中指定两者。我尝试了几种方法,但找不到任何有效的方法:
通配符 - 不起作用
controllers:
resource: '../../src/*/Controller'
type: annotation
多路径 - 不起作用
controllers:
resource: '../../src/{StuffA,StuffB}/Controller'
type: annotation
单一路径 - 有效但仅适用于一个控制器
controllers:
resource: '../../src/StuffA/Controller'
type: annotation
关于我做错了什么的任何提示?
只需创建多个资源密钥。
例如:
# annotations.yaml
controllersFoo:
resource: ../../src/Foo/Controller/
type: annotation
controllersBar:
resource: ../../src/Bar/Controller/
type: annotation
我认为您不能在注解加载器中使用通配符或 glob 模式。