0

Doctrine QueryBuilder を使用してページ エンティティを取得しようとしています。ORM の実装に成功し、問題なくデータベースが生成されました。データベースからエンティティを取得したいので、QueryException を返すようです

Fatal error: Uncaught exception 'Doctrine\ORM\Query\QueryException' with message 'SELECT page FROM Website\Model\Body\Page page WHERE page.isActive = 1' in path\to\orm\Doctrine\ORM\Query\QueryException.php:39 
Stack trace: 
#0 path\to\orm\Doctrine\ORM\Query\Parser.php(429): Doctrine\ORM\Query\QueryException::dqlError('SELECT page FRO...') 
#1 path\to\orm\Doctrine\ORM\Query\Parser.php(854): Doctrine\ORM\Query\Parser->semanticalError('Class 'Website\...', Array) 
#2 path\to\orm\Doctrine\ORM\Query\Parser.php(1529): Doctrine\ORM\Query\Parser->AbstractSchemaName() 
#3 path\to\orm\Doctrine\ORM\Query\Parser.php(1426): Doctrine\ORM\Query\Parser->RangeVariableDeclaration() 
#4 path\to\orm\Doctrine\ORM\Query\Parser.php(1168): Doctrine\ORM\Query\Parser->IdentificationVariableDeclaration() 
#5 path\to\orm\Doctrine\ORM\Query\Parser.php(757): Doctrine\ORM\Query\Parser->FromClause()
#6 path\to\ in path\to\orm\Doctrine\ORM\Query\QueryException.php on line 49

このコードは問題を引き起こします

public function getActivePages()
{
    $qb = \WebTools\Doctrine\Doctrine::instance()->getQueryBuilder();
    $qb->select('page')
       ->from('Website\Model\Body\Page', 'page')
       ->where($qb->expr()->eq("page.isActive", true));
    $query = $qb->getQuery();
    $result = $query->getResult();
    \Doctrine\Common\Util\Debug::dump($result);
    die();
    return $result;
}

どんな助けでも大歓迎です、ありがとう

4

1 に答える 1

0

試す

$qb->select('page')
   ->from('Page', 'page')

また

 $qb->select('page')
   ->from('\Website\Model\Body\Page', 'page')

クラスがdotrineによってマップされていることを確認してください。

于 2013-05-23T20:42:44.223 に答える