Doctrine orm 在实体内的属性上自动应用自定义sql函数

Doctrine orm 在实体内的属性上自动应用自定义sql函数,doctrine-orm,doctrine,symfony,Doctrine Orm,Doctrine,Symfony,我将symfony与条令一起使用,并尝试在实体内的属性上自动应用自定义sql函数 我已经在dql服务中定义了自定义sql函数,我可以使用我在实体存储库中创建的自定义函数 orm: mappings: AppBundle: type: annotation dql: string_functions: translate_term: AppBundle\DoctrineExtensions\Utils\TranslateTer

我将symfony与条令一起使用,并尝试在实体内的属性上自动应用自定义sql函数

我已经在
dql
服务中定义了自定义sql函数,我可以使用我在实体存储库中创建的自定义函数

orm:
    mappings:
      AppBundle:
        type: annotation
    dql:
      string_functions:
        translate_term: AppBundle\DoctrineExtensions\Utils\TranslateTerm
问题是我希望能够使用
findAll()
进行简单查询

我想使用
AbstractIdGenerator
,但我不确定它是否对我有帮助,因为据我所知,它是用于插入的。而我想要的是转换从db接收到的数据

   /**
     * @var string
     *
     * @ORM\Column(name="mi_term", type="string", length=25, nullable=true)
     * @ORM\GeneratedValue(strategy="CUSTOM")
     * @ORM\CustomIdGenerator(class="AppBundle\DoctrineExtensions\Utils\TranslateTermEntity")
     */
    private $miTerm;
目的是翻译查询中的db术语

如有任何见解,将不胜感激


显然这是不可能的,而且理由很充分

正如一个开发团队向我提到的,在db上处理这个问题通常是个坏主意(尽管有一个通过listener实现的实体转换)

链接到他的答案和现有的实现

要舍入属性值(可能更常用),可以在
@Column()
注释中使用
scale
属性

由于我完全同意他的意见,我可能会为客户准备一个语言包,并将其附加到客户翻译解决方案中