配置中的教义 Resolve_target_entity
Posted
技术标签:
【中文标题】配置中的教义 Resolve_target_entity【英文标题】:Doctrine Resolve_target_entity in config 【发布时间】:2014-06-27 08:37:35 【问题描述】:我在教义网站页面上找到了这个: http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/cookbook/resolve-target-entity-listener.html
一种让我的实体与可以配置的接口进行通信的方法。唯一的问题是我找不到任何地方如何将它放入我的阵列配置中。我已经检查了配置源,但文档中没有任何内容: https://github.com/doctrine/DoctrineORMModule/blob/master/docs/configuration.md
希望有人能帮忙
谢谢
【问题讨论】:
【参考方案1】:你可以这样使用它:
'doctrine' => array(
'entity_resolver' => array(
'orm_default' => array(
'resolvers' => array(
'MyModule\Entity\FooInterface' => 'OtherModule\Entity\Foo',
),
),
),
我们使用它,例如这里(作为一个活生生的例子)在Soflomo\Blog。
【讨论】:
像魅力一样工作,但还有一种方法可以定义加入哪些列等? 是的,您应该在映射中这样做。注意我在这里使用接口,实体解析器监听器用“真实”实体替换它:github.com/Soflomo/Blog/blob/master/config/mapping/… 我看到了,但是没有办法将元信息作为 docblock 代码来执行此操作吗?问题是我在其他任何地方都使用它等等。将某些部分切换到 xml 有点奇怪 XML 和 YAML 是可替换的。我们只使用 XML,如果你使用 YAML,你也有关系注解。只需确保在 YAML 中引用接口而不是实例即可。除此之外,它是一样的。 Dirkos,请阅读我的回答。 1) Doctrine 中的映射可以通过 XML、YAML 或注释进行。 2)实体之间的关系称为关联和映射的一部分(因此,关联也在 XML、YAML 或注释中定义。3)实体解析器侦听器是一个 Doctrine 配置事物,独立于映射。因此它不能是 XML、YAML 或注释的一部分。实体目标监听器的配置应如上所定义。所有映射(包括关联)都采用您最喜欢的格式(同样,XML、YAML 或注释)。以上是关于配置中的教义 Resolve_target_entity的主要内容,如果未能解决你的问题,请参考以下文章
类中的教义注释“@Doctrine\ORM\Annotation\Entity”不存在或无法自动加载