【发布时间】:2014-06-06 02:48:48
【问题描述】:
我正在开发一个电子商务 Symfony 应用程序,但我一直在努力寻找有关如何创建从 Doctrine 检索一些数据以及从外部来源检索一些数据的实体的信息。
这是一个网站,将销售与实体店内现有的相同商品,该实体店已经拥有预先存在的库存系统。
我目前的情况是,该应用程序需要能够从外部来源(我们店内库存系统的 REST API)检索价格和库存信息,而大部分数据由 Doctrine 处理。
例如,我有一个 Product 类,如下所示:
class Product
{
protected $id;
protected $title;
protected $description;
protected $quantity;
protected $price
}
我希望前三个字段像任何其他实体一样由 Doctrine 处理(我已经设置,并且有大量文档),但后两个字段将基于任意数据源(我们后端数据的 REST API,这需要能够随着商店的增长和后端的变化而改变)
最终,我希望这些产品实体可以从任何标准原则查询中调用,并且所有字段都像任何其他实体一样完全可用。 (包括价格和数量)
我想知道是否有人可以建议如何在 Symfony 生态系统中解决这个问题。
此时,我正在查看一个 Doctrine postLoad 事件订阅者,该订阅者在实体返回之前对其进行操作,但我想知道这是否是可行的方法,以及如何构造代码来实现它。 (我猜我首先需要一个单独的捆绑包来公开“价格”服务,所以我可以执行 $Service->getPrice($ProductID),那么我应该在哪里调用 getPrice?我觉得这不是什么东西它属于实体类本身(因为该类的目的只是定义实体是什么,而不是如何制作实体),但这就是Doctrine docs 似乎建议的)
我已经问过类似的问题here,但没有得到非常明确的答复,所以我希望简化问题可能会有所帮助。
【问题讨论】:
标签: php symfony doctrine-orm