2
$qb = $this->doctrine->em->createQueryBuilder()                
            ->from('User','u')
            ->select('count(u.name)')
            ->where('u.name = :name')
            ->setParameter('name', $user->getUsername());

を実行する$qb->getQuery()->getResult()と、次のエラーが発生します。

致命的なエラー: /var/www/darkfrog/application/libraries/Doctrine/ORM 内のメッセージ「SELECT count(u.name) FROM User u WHERE u.name = :name」を含む例外「Doctrine\ORM\Query\QueryException」をキャッチできませんでした/Query/QueryException.php:39スタック トレース:

#0/var/www/darkfrog/application/libraries/Doctrine/ORM/Query/Parser.php(429): Doctrine\ORM\Query\QueryException::dqlError('SELECT count(u....')

#1/var/www/darkfrog/application/libraries/Doctrine/ORM/Query/Parser.php(854): Doctrine\ORM\Query\Parser->semanticalError('Class 'User' is...', Array)

#2/var/www/darkfrog/application/libraries/Doctrine/ORM/Query/Parser.php(1529): Doctrine\ORM\Query\Parser->AbstractSchemaName()

#3/var/www/darkfrog/application/libraries/Doctrine/ORM/Query/Parser.php(1426): Doctrine\ORM\Query\Parser->RangeVariableDeclaration()

#4/var/www/darkfrog/application/libraries/Doctrine/ORM/Query/Parser.php(1168): Doctrine\ORM\Query\Parser->IdentificationVariableDeclaration()

#5/var/www/darkfrog/application/libraries/Doctrine/ORM/Query/Parser.php(757): Doctrine\ORM\Query\Pars in /var/www/darkfrog/application/libraries/Doctrine/ORM/Query/QueryException 49行目の.php

4

3 に答える 3

0

User::class を使用してエンティティ名を定義できます。

$qb = $this->doctrine->em->createQueryBuilder()                
            ->from(User::class,'u')
            ->select('count(u.name)')
            ->where('u.name = :name')
            ->setParameter('name', $user->getUsername());
于 2019-01-18T13:10:56.243 に答える