如何绕过Symfony Services yml中的默认标签

您知道是否有一种方法可以避免将_default标签用于yml文件中的抽象类吗?

  _defaults:
    tags: ['controller.service_arguments']

  My\Abstract\Class:
    abstract: true
    arguments:
      - '@.....'
      - '@....'

  Normal\Class:
    parent: My\Abstract\Class
    arguments:
      - '@...'
      - '@....'

很显然,我在yml文件中有更多的类,我只需要避免为一个抽象类添加标签。

谢谢。

zhang_alex34 回答:如何绕过Symfony Services yml中的默认标签

您尝试过吗?

_defaults:
    tags: ['controller.service_arguments']

  My\Abstract\Class:
    abstract: true
    tags: [] # <------------ This line
    arguments:
      - '@.....'
      - '@....'

  Normal\Class:
    parent: My\Abstract\Class
    arguments:
      - '@...'
      - '@....'
,

_default仅适用于当前yaml文件。您可以将抽象类放在另一个yaml文件中,这样它就不会继承自_default配置。

如果您所有的普通班级都使用一个共同的前缀,则可以定位该前缀而不是像_default这样

Namespace\Normal\:
    resource: '../src/Normal'
    tags: ['controller.service_arguments']
本文链接:https://www.f2er.com/3150394.html

大家都在问