如何绕过symfony services yml中的默认标记
你知道有没有办法避免在yml文件中使用抽象类的默认标记如何绕过symfony services yml中的默认标记,symfony,yaml,Symfony,Yaml,你知道有没有办法避免在yml文件中使用抽象类的默认标记 _defaults: tags: ['controller.service_arguments'] My\Abstract\Class: abstract: true arguments: - '@.....' - '@....' Normal\Class: parent: My\Abstract\Class arguments: - '@...'
_defaults:
tags: ['controller.service_arguments']
My\Abstract\Class:
abstract: true
arguments:
- '@.....'
- '@....'
Normal\Class:
parent: My\Abstract\Class
arguments:
- '@...'
- '@....'
显然,我在yml文件中有更多的类,我只需要避免一个抽象类的标记
谢谢。你试过这个吗
_defaults:
tags: ['controller.service_arguments']
My\Abstract\Class:
abstract: true
tags: [] # <------------ This line
arguments:
- '@.....'
- '@....'
Normal\Class:
parent: My\Abstract\Class
arguments:
- '@...'
- '@....'
\u默认值:
标记:['controller.service_参数']
我的\抽象\类:
摘要:没错
标记:[]#\u默认值
仅适用于当前yaml文件。您可以将抽象类放在另一个yaml文件中,这样它就不会从默认的配置继承
如果所有普通类都共享一个公共前缀,则可以将前缀作为目标,而不是默认值
Namespace\Normal\:
resource: '../src/Normal'
tags: ['controller.service_arguments']
Symfony版本?尝试向抽象类添加标记是否会导致错误?是的,这是一个选项。有没有不移动抽象类的解决方案?您是否尝试过@Domagoj solution?