如何为Symfony2控制器实施基本
-
22-10-2019 - |
题
有些文章围绕着这个话题,但它们似乎对我来说是一个可用的解决方案。我的目标是将一些基本方法(无论如何我都需要在每个控制器中需要的方法)放入基础控制器,例如
$this->getEntityManager();
$this->getRequest();
$this->getRepository($entityName);
如何才能做到这一点?
AFAIK我们必须将服务注入基础控制器,但是我如何告诉课程为其超类使用服务呢?关于控制器和依赖注入[1]有一些体面的文章,但最后我也坚持这种方法,请参阅我的评论:[2
[1] http://miller.limethinking.co.uk/2011/04/15/symfony2-controller-as-service/
[2] http://miller.limethinking.co.uk/2011/04/15/symfony2-controller-as-service/#comment-579
解决方案
伪代码
MyBaseController impliments Symfony\Component\Di\ContainerAwareInterface
setContainer($container)
$this->container = $container
getEntityManager
return $this->container->get('doctrine.orm.entity_manager')
不隶属于 StackOverflow