こんにちは、エキスパート: 'referenceMany'を使って参照されたドキュメントの詳細を抽出するクエリを構築する際に問題があります。ここでは、コードsymfony mongodb odm referenceMany
class FoodItem{
/**
* @MongoDb\Id
*/
protected Id;
/**
* @MongoDb\field(type="string")
*/
protected name;
/**
* @MongoDb\field(type="float")
*/
protected calories;
/**
* @MongoDb\ReferenceMany(targetDocument="FoodItem", storeAs="id")
*/
protected $bestEatenWith = array();
}
の設定例は、アイデアは1 FoodItemは、したがって、他のFoodItems bestEatenWith可能である「bestEatenWith」FoodItem 『文書「同上のは同じに属する』の配列です。
次のように私が使用したクエリがある -
$qb = $dm->createQueryBuilder('AppBundle:FoodItem')
->select("name", "bestEatenWith", "nutrition")
->eagerCursor(true)
->hydrate(false);
$query = $qb->getQuery();
$result = $query->execute();
結果、私はその後、小枝のテンプレートを使用して表示されます、そして「私は、小枝に「名前」と「栄養」を表示することができますが、私が手bestEatenWith同上の
質問1「の配列として」:どのように私はPHPを使用して$結果を解析し、「同上の配列に含まれる 『』 bestEatenWithにアクセスできますか?
質問2:単一のクエリで「bestEatenWith.name」のようなものを取得することはできませんか?コントローラで