【发布时间】:2011-05-23 23:05:55
【问题描述】:
我正在寻找一种适当的方法来减少我为 Symfony2 框架编写的消息传递包中的耦合,以便我可以轻松地在应用程序之间使用它。
消息实体的每个实例都应该有一个发送者和一个接收者instanceof Symfony\Component\Security\Core\User\UserInterface,我可以在属性的设置器中要求它们。但是,在设置 ORM 关系时,似乎我必须专门设置一个 targetEntity(例如Foo\BarBundle\Entity\User),这意味着在不同应用程序中对 Message 实体的所有进一步使用都需要更改代码,或者硬拉他们使用 User 实体,在我看来,这似乎不在消息包的范围内。
关于在这种情况下如何减少耦合的任何建议/最佳实践?
编辑:我尝试设置一个带扩展名的全局参数并在注释中使用它,例如@ORM\ManyToOne(targetEntity="%my.entity%"),但似乎注释解析器不转换参数,因为字符串被解释为文字,当然失败了。
【问题讨论】:
标签: php doctrine-orm symfony