我是Symfony& amp;的初学者它已经让我生病了!
这是我的简单代码:
<?php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use AppBundle\Entity\Users;
class ValidationController extends Controller
{
public function alreadyExists($email){
$repository = $this->getDoctrine()->getRepository('AppBundle:Users'); //ERROR IN THIS LINE
$user = $repository->findOneBy(array('email' => $email));
if($user==NULL) return true;
else return false;
}
}
?>
当我调用函数alreadyExists
时,它给了我这个错误:
错误:调用成员函数has()on null in 供应商/ symfony的/ symfony的/ SRC / Symfony的/捆绑/ FrameworkBundle /控制器/ ControllerTrait.php (第356行)
不确定,但我认为它没有得到学说。当我跟踪时,错误实际发生在第356行的vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Controller/ControllerTrait.php
文件中,即:
protected function getDoctrine()
{
if (!$this->container->has('doctrine')) { ///LINE NO. 356
throw new \LogicException('The DoctrineBundle is not registered in your application.');
}
return $this->container->get('doctrine');
}
如果我将其剪切粘贴到另一个控制器中,即使其相同的代码和另一个控制器具有完全相同的namespace
&amp; use
陈述。
请有人告诉我这是什么错误&amp;为什么会发生这种情况?