【问题标题】:Doctrine dynamic Entity attributes教义动态实体属性
【发布时间】:2013-06-13 00:55:06
【问题描述】:

在 Doctrine2 中,我有一个具有使用复杂 SQL 查询计算的属性的类。该属性称为“重复”

我不想在我的数据库中保存这个值,我希望每次我水合给定对象并使用它访问它时计算它

$obj->getDuplicate()

如果我向我的 DQL 添加一个单独的选择,这会导致数组水合,这就是为什么我希望这个参数几乎成为我的对象实体的一部分,而不是持久化。

我有哪些选择?

(由于性能原因,我们计划在下一个版本中一起迁移到阵列水合,但现在没有时间了 :)

【问题讨论】:

    标签: php mysql sql symfony doctrine-orm


    【解决方案1】:

    您可以使用postLoad 事件侦听器并在那里注入存储库。
    拥有存储库后,每次从数据库加载对象时,您都可以调用自定义 DQL 查询,该查询将为您完成这项工作。

    不过,我不知道这是否是一个好的做法,但我确信这会奏效。

    如果您需要一些提示,请查看here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多