複数のエンティティに関連するエンティティとして単純なリストが必要なため、クエリを最適化しようとしています。このクエリを作成したので、ID と名前を返してください。
public function findAllOrderByName() {
$qb = $this->createQueryBuilder('a');
$query = $qb->select(array('partial a.{id,name}'))
->addOrderBy('a.name', 'ASC')
->getQuery();
return $query->getResult();
}
次のようにコントローラーに返します。
public function getInstrumentsAction()
{
$instruments = $this->getDoctrine()->getRepository('AcmeInstrumentBundle:Instrument')->findAllOrderByName();
return array('instruments' => $instruments);
}
2つのキャンプを返すだけでなく、他の関連エンティティのすべてのフィールドを含む完全なオブジェクトを提供します。
なぜうまくいかなかったのですか?