Doctrine orm Symfony4 Doctrine2自定义命名策略如何

Doctrine orm Symfony4 Doctrine2自定义命名策略如何,doctrine-orm,symfony4,Doctrine Orm,Symfony4,我只是从Symfony4/Doctrine2开始。因此,我需要实现Doctrine2 customNamingStrategy,但除了这个和这个答案之外,我找不到任何文档/示例。他们并没有就如何在Symfony4中实现这一点做太多解释。我知道我需要创建一个实现NamingStrategy接口的类,那么我应该把这个类放在src/Entity的Symfony4文件夹结构中的什么位置呢 然后,我需要将该类注册为服务,对于一个经验丰富的Symfony开发人员来说,了解它一定很容易,但由于我刚刚开始,所以

我只是从Symfony4/Doctrine2开始。因此,我需要实现Doctrine2 custom
NamingStrategy
,但除了这个和这个答案之外,我找不到任何文档/示例。他们并没有就如何在Symfony4中实现这一点做太多解释。我知道我需要创建一个实现
NamingStrategy
接口的类,那么我应该把这个类放在
src/Entity
的Symfony4文件夹结构中的什么位置呢


然后,我需要将该类注册为服务,对于一个经验丰富的Symfony开发人员来说,了解它一定很容易,但由于我刚刚开始,所以最好对此进行一些详细说明。谢谢,任何意见都将不胜感激。

无论如何,我已经设法自己解决了

首先,我创建了扩展下划线命名策略的自定义命名策略类。我已经将它放在src/Service/下,仍然不确定它在文件夹层次结构中的位置是否正确

然后,通过在config/services.yaml的末尾添加以下内容,我将此类注册为服务:

...

# Naming Strategy
app.naming_strategy.custom:
    class: App\Service\CustomNamingStrategy
    autowire: true
之后,我通过编辑config/packages/doctrine.yaml将该条令配置为使用此自定义命名策略,如下所示:

我的评论是:

    naming_strategy: doctrine.orm.naming_strategy.underscore
并在其下增加:

    naming_strategy: app.naming_strategy.custom

不管怎样,我自己已经设法弄明白了

首先,我创建了扩展下划线命名策略的自定义命名策略类。我已经将它放在src/Service/下,仍然不确定它在文件夹层次结构中的位置是否正确

然后,通过在config/services.yaml的末尾添加以下内容,我将此类注册为服务:

...

# Naming Strategy
app.naming_strategy.custom:
    class: App\Service\CustomNamingStrategy
    autowire: true
之后,我通过编辑config/packages/doctrine.yaml将该条令配置为使用此自定义命名策略,如下所示:

我的评论是:

    naming_strategy: doctrine.orm.naming_strategy.underscore
并在其下增加:

    naming_strategy: app.naming_strategy.custom