【发布时间】:2015-09-10 16:47:14
【问题描述】:
我是 Symfony 2 和 Doctrine 的新手。
我在我的 symfony 项目中创建了一个新类,它位于:
project_folder/src/Libraries/Validarcontenido/Validarcontenido.php
我需要在这个类中获取 Doctrine Entity Manager 实例。
我已经阅读了有关它的文档,每个人都说我必须将该类添加到 services.yml 文件中,但是没有用。
这是我的代码:
<?php
namespace Libraries\Validarcontenido;
use AdminBundle\Entity\Aportes;
use Doctrine\ORM\EntityManager;
use Symfony\Component\HttpFoundation\Request;
class Validarcontenido
{
private $request, $post, $em;
public function __construct()
{
$this->request = Request::createFromGlobals();
$this->post = $this->request->request->all();
// gets doctrine instance
$this->em = $this->getContainer()->get('doctrine');
}
}
还有 services.yml:
# Learn more about services, parameters and containers at
# http://symfony.com/doc/current/book/service_container.html
parameters:
# parameter_name: value
services:
validarcontenido.service:
class: Libraries\Validarcontenido\Validarcontenido
arguments: [@doctrine.orm.entity_manager]
但是 Symfony 给我返回了这个错误信息:
Attempted to call an undefined method named "getContainer" of class "Libraries\Validarcontenido\Validarcontenido".
500 Internal Server Error - UndefinedMethodException
我做错了什么?非常感谢。
【问题讨论】:
标签: class symfony doctrine instance entitymanager