Doctrine が配列にハイドレートするのと同じ方法で、Doctrine 2 エンティティを配列 (関連するオブジェクトを含む) に変換する方法を探しています。
誰もこれを行う方法を知っていますか?
ありがとう!
Doctrine が配列にハイドレートするのと同じ方法で、Doctrine 2 エンティティを配列 (関連するオブジェクトを含む) に変換する方法を探しています。
誰もこれを行う方法を知っていますか?
ありがとう!
これを意味しているかどうかはわかりませんが、「フェッチ結合」を使用してから水和することで、望ましい結果が得られました。
Fetch Joins : 通常の結合の使用に加えて、関連するエンティティをフェッチし、それらをクエリの水和結果に含めるために使用されます。
通常の結合とフェッチ結合を区別する特別な DQL キーワードはありません。結合 (内部結合または外部結合) は、結合されたエンティティのフィールドが集計関数の外側の DQL クエリの SELECT 部分に現れるとすぐに、「フェッチ結合」になります。それ以外の場合は、「通常の結合」です。
$query = $em->createQuery("SELECT u, a FROM User u JOIN u.address a WHERE a.city = 'Berlin'");
$users = $query->getArrayResult();
http://docs.doctrine-project.org/en/latest/reference/dql-doctrine-query-language.html