2016-09-13 9 views
1

私のFAQ - システムはSubFAQを持つことができ、すべてのFAQとSubFAQは好き(likecount)することができます。Symfony2 - ソート多次元配列再帰

私は私のコントローラにlikecountによってすべてのFAQ(両親)を並べ替えるために管理:

 $faqs = $this->getDoctrine()// DATENBANK LADEN UND DIREKT SORTIEREN 
    ->getRepository('AppBundle:Faq') 
     ->findBy(array('parent' => null), array('likecount' => 'desc')); 

問題はSubFAQ年代はまだlikecountによってソートされていないこと、です。

親のためのダンプ(FAQ)

"faqs" => array:13 [▼ 
0 => Faq {#1025 ▼ 
    -id: 23 
    -question: "ajaja" 
    -answer: "ajaja" 
    -username: "Robert" 
    -userid: 1 
    -createdat: DateTime {#1023 ▶} 
    -likecount: 4 
    -tags: PersistentCollection {#1040 ▶} 
    -categoryid: Category {#1015 ▶} 
    -children: PersistentCollection {#1042 ▶} 
    -parent: null 
    -faqcatid: Category {#1015 ▶} 

子供のためのダンプ(SubFAQ)

0 => Faq {#1349 ▼ 
    -id: 72 
    -question: "1" 
    -answer: "1" 
    -username: "Robert" 
    -userid: 1 
    -createdat: DateTime {#1351 ▶} 
    -likecount: null 
    -tags: PersistentCollection {#1095 ▶} 
    -categoryid: null 
    -children: PersistentCollection {#1372 ▶} 
    -parent: Faq {#469 ▶} 
    -faqcatid: null 

私はすべてのFAQに'subfaq.html.twig'が含まれており、彼に子供たちを渡した。これは、Subsq.html.twigにSubs in Subsが含まれている場合に、再びそれ自体を含む。

{{ include('default/subfaq.html.twig', {'faqs' : faq.children}) }} 

どうすればこの問題を解決できますか?

ありがとうございました!

答えて

0

あなたはorder associationsアノテーションを使用することができます

/** @Entity **/ 
class Faq 
{ 
    // ... 

    /** 
    * @ManyToMany(targetEntity="SubFaq") 
    * @OrderBy({"likecount" = "ASC"}) 
    **/ 
    private $subfaqs; 
} 
+0

ありがとうございました!ワーキング! – yz55