0

クエリをカスタム リポジトリ クラスに移動しようとしています。ここに私がこれまでに持っているものがあります

class MovieRepository extends EntityRepository
{
    public function showMovie($movie)
    {
    $em = $this->getEntityManager();

    $qb = $em->createQueryBuilder('m');

    $query = $qb->select('m.title', 'm.img', 'u.username')
        ->where('m.title = :movie')
        ->leftJoin('m.user', 'u')
        ->setParameter('movie', $movie)
        ->getQuery();

    return $query->getSingleResult();
    }
}

コントローラーで次のように使用します。

$em = $this->getDoctrine()->getManager();
$result = $em->getRepository('AMovieBundle:Movie')->showMovie($movie);

@ORM\Entity(repositoryClass="A\MovieBundle\Entity\MovieRepository") をエンティティに配置しましたが、名前空間とフォルダーは正しく、映画からユーザーへの関係は以前に機能していたので正しいです。コントローラーにクエリがありました。

私が取得し続ける主なエラーは次のとおりです。

注意: 未定義のオフセット: /Applications/MAMP/htdocs/symfony2test/vendor/doctrine/orm/lib/Doctrine/ORM/QueryBuilder.php 行 271 の 0

クエリ ビルダーの 271 行目は次のとおりです。

public function getRootAlias()
{
    $aliases = $this->getRootAliases();
    return $aliases[0];
}

ここからどこへ行けばいいのかわからないので、助けていただければ幸いです。

4

1 に答える 1