gpt4 book ai didi

zend-framework - Symfony DIC 和家长服务不工作

转载 作者:行者123 更新时间:2023-12-04 06:38:15 24 4
gpt4 key购买 nike

我正在将 Symfony DIC 集成到一个 zend 框架应用程序中,除了父服务外一切正常。

在我的 DIC 配置中,我有一个父服务 PC_Service,它将被我的所有服务扩展。问题是实体管理器在扩展 PC_Service 的服务中不可用(NULL)。当我通过 service.stats 注入(inject) entitymanager 时,entitymanger 设置正确。

...
<service id="pc.service" class="PC_Service" abstract="true">
<call method="setEntityManager">
<argument type="service" id="doctrine.entitymanager" />
</call>
</service>
...
<service id="service.stats" class="Application_Service_Stats" parent="pc.service" />
...

PC_Service

abstract class PC_Service
{
protected $_em;

public function setEntityManager($entityManager)
{
$this->_em = $entityManager;
}
}

Application_Service_Stats

class Application_Service_Stats extends PC_Service
{
... $this->_em should be set here.
}

我希望有人能告诉我我做错了什么。

最佳答案

不知道是不是打错了,应该是doctrine.orm.default_entity_manager或者doctrine.orm.entity_manager(之前的别名):

<service id="pc.service" class="PC_Service" abstract="true">
<call method="setEntityManager">
<argument type="service" id="doctrine.orm.default_entity_manager" />
</call>
</service>

关于zend-framework - Symfony DIC 和家长服务不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9662458/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com