2016-08-03 13 views
6

私はページツリーを持っています。私はページのすべてのサブページを取得したいと思います。その場合、yaml-fileにfetch: Eagerを追加しました。私はまた、その位置でサブページを注文したい。しかし、fetchはすべてを破滅させるようです。実行されたクエリの総量は少なくなりますが、サブページはその位置によってもう順序付けされません。Symfony DoctrineフェッチEAGERとorderByの組み合わせが機能しません

この部分はページのエンティティのための私のYAMLファイル内にある:

oneToMany: 
    pages: 
     targetEntity: Page 
     mappedBy: parentPage 
     fetch: EAGER 
     orderBy: { position: ASC } 

ページのすべてのページを取得しますが、それでもポジションで注文する方法任意のアイデア?ページツリーは1レベル以上ネストすることができます。

- page_1 
    page_1_1 
    page_1_2 
     page_1_2_1 
     page_1_2_2 
- page_2 

答えて

0

私にも同様の問題があります。フェッチモードを使用すると、EAGERのdoctrineは2つのクエリの代わりに左の結合で1つのクエリを作成し、予告なしに静かに順序を無視します。解決策はLAZYモードを使用していますが、有効性は低いです。

関連する問題