我一直在尝试调用Entity Manager构造函数:
function __construct()
{
$this->getDoctrine()->getEntityManager();
...
Run Code Online (Sandbox Code Playgroud)
但是,正如我在这个答案中看到的:Stackoverflow问题,它无法完成.
所以我想知道是否有办法实现它,因为我必须经常调用它,并希望在获取存储库后在构造函数中做一些事情.
编辑:
我试过@MKhalidJunaid回答:
//src/MSD/HomeBundle/Resources/config/services.yml
services:
imageTransController.custom.service:
class: MSD\HomeBundle\Controller\ImageTransController
arguments:
EntityManager: "@doctrine.orm.entity_manager"
Run Code Online (Sandbox Code Playgroud)
-
//app/config/config.php
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: doctrine_extensions.yml }
- { resource: "@MSDHomeBundle/Resources/config/services.yml" }
Run Code Online (Sandbox Code Playgroud)
-
//src/MSD/HomeBundle/Controller/ImageTransController.php
namespace MSD\HomeBundle\Controller;
use Doctrine\ORM\EntityManager;
use MSD\HomeBundle\Entity\Imagen as Imagen;
use MSD\HomeBundle\Controller\HomeController as HomeController;
class ImageTransController extends HomeController
{
protected $em ;
function __construct(EntityManager $entityManager)
{
...
Run Code Online (Sandbox Code Playgroud)
但我收到这个错误:
Catchable Fatal Error: Catchable Fatal Error: …Run Code Online (Sandbox Code Playgroud)