Symfony:调用成员函数has()on null

时间:2017-09-29 01:40:33

标签: php symfony doctrine symfony-3.3

我是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;为什么会发生这种情况?

0 个答案:

没有答案