1

プロパティ「カテゴリ」を持つエンティティ イメージがあります。Categories は Doctrine の ArrayCollection のインスタンスであり、さまざまな Category オブジェクトを保持します。

ここで、Category オブジェクト「main」を含むすべての Image オブジェクトを取得したいと考えています。

通常のプロパティでは、次のようになります。

$repository->findBy(array('category' => 'main'));

これは配列プロパティでも可能ですか、それともカテゴリ側で画像を取得する必要がありますか?

よろしく!

4

1 に答える 1

1

この->findBy()メソッドは、リレーションの所有側でのみ機能します。

リポジトリでカスタム メソッドを作成することもできます。

public function findByCategoryName($categoryName)
{
    return $this
        ->createQueryBuilder('image')
        ->innerJoin('image.categories', 'category')
        ->where('category.name = :categoryName')
        ->setParameter('categoryName', $categoryName)
        ->getQuery()
        ->getResult()
    ;
}
于 2012-04-29T19:32:24.787 に答える