首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调用未定义的方法getEntityManager

调用未定义的方法getEntityManager
EN

Stack Overflow用户
提问于 2013-10-04 20:40:09
回答 1查看 8.6K关注 0票数 0

我是Symfony的新手,我正在尝试运行一个基本的SQL查询,但一直收到下面的错误。我真的很难解决这个问题。我想知道是否有人能给我指出正确的方向,并可能解释一下我做错了什么?

首先要感谢大家!

错误:

代码语言:javascript
复制
Call to Undefined Method ... DefaultController::getEntityManager()

实体(Company.php)

代码语言:javascript
复制
namespace Foo\FooBundle\Entity;
use Doctrine\Common\Annotations\AnnotationReader;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ORM\EntityRepository;

 /**
 *@ORM\Entity
 *@ORM\Table(name="company")
 */
class Company extends EntityRepository
{
   /**
     *@ORM\id
     *@ORM\Column(type="integer")
     *@ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    /**
    *@ORM\Column(type="string", length=250)
    */
    protected $name;

    /**
    *@ORM\Column(type="string", length=650)
    */
    protected $description;
}

控制器

代码语言:javascript
复制
public function searchAction($word)
{
        $stmt = $this->getEntityManager()->getConnection()->prepare("SELECT * FROM company WHERE 
     MATCH(`keywords`) AGAINST(':word' IN BOOLEAN MODE)");
                  $stmt->bindValue('word ', $word);
                  $stmt->execute();
                  $results = $stmt->fetchAll();

    ..etc, etc....      
EN

回答 1

Stack Overflow用户

发布于 2013-10-04 21:57:43

正如touki在评论中所说的那样,

你应该从should中得到经理:

代码语言:javascript
复制
$em = $this->getDoctrine()->getManager();

我看到你发布了很多关于symfony2的问题,试着制作一个测试项目,生成实体,并为它创建CRUD。

代码语言:javascript
复制
php app/console doctrine:generate:entity
php app/console doctrine:generate:crud

生成的代码将帮助您理解它是如何工作的

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19181421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档