Doctrine orm 原则DQL在查询生成器上抛出致命错误
我遵循条令中的分页示例,但出现致命错误:Doctrine orm 原则DQL在查询生成器上抛出致命错误,doctrine-orm,pagination,Doctrine Orm,Pagination,我遵循条令中的分页示例,但出现致命错误: PHP Fatal error: Uncaught Doctrine\ORM\Query\QueryException: SELECT * FROM Model\Report r in /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/QueryException.php:43 Stack trace: #0 /usr/share/nginx/html/td/vend
PHP Fatal error: Uncaught Doctrine\ORM\Query\QueryException: SELECT * FROM Model\Report r in /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/QueryException.php:43
Stack trace:
#0 /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(456): Doctrine\ORM\Query\QueryException::dqlError('SELECT * FROM M...')
#1 /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(2253): Doctrine\ORM\Query\Parser->syntaxError('IdentificationV...', Array)
#2 /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(1182): Doctrine\ORM\Query\Parser->SelectExpression()
#3 /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(878): Doctrine\ORM\Query\Parser->SelectClause()
#4 /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(847): Doctrine\ORM\Query\Parser->SelectStatement()
#5 /usr/share/nginx/html/td/ven in /usr/share/nginx/html/td/vendor/doctrine/orm/lib/Doctrine/ORM/Query/QueryException.php on line 54
这里是Doctrine的默认示例
这是我的代码:
<?php
use Doctrine\ORM\Tools\Pagination\Paginator;
require "bootstrap.php";
$dql = 'SELECT * FROM reports';
$max = isset($args[1])?$args[1]:5;
$query = $entityManager->createQuery($dql)->setFirstResult(0)->setMaxResults($max);
$paginator = new Paginator($query, $fetchJoinCollection = false);
$c = count($paginator);
foreach($paginator as $report){
echo $report->getName() . "\n";
}
在dql选择中没有通配符*
改变
$dql = 'SELECT * FROM reports';
到
参考资料
谢谢Jannes。我正在研究原则2.6.3,我将使用php$dql=“从ModelName r中选择r”代码>
$dql = 'SELECT r FROM Model\Report r';