2016-04-03 6 views
0

Ich benutze Laravel 5.2. Ich habe 3 Tabellen (Modelle):Laravel, mehrere Abfragen verschachteln mit mehrer Ordnung von

  • Events
  • Termine
  • Sessions

Meine Beziehungen: Event hasMany Termine. Datum hat viele Sitzungen. Das Problem ist, dass wenn ich das Ereignis mit Daten und Sitzung bekomme, die Daten nicht geordnet sind.

Wie bekomme ich Event mit bestellten Daten und jedes Datum mit geordneten Sitzungen.

$event = Event::find($id); 
$event->load(['dates' => function($query) 
    { 
     $query->orderBy('date', 'asc'); 
    } 
]); 

Dies ist, wie ich eine Veranstaltung mit geordneten Daten erhalten. Wie kann ich Sitzungen für jedes Datum bestellen?

Dank

Antwort

0

Ich denke, ich die Antwort gefunden habe. Die Ladung funktionierte nicht innerhalb der verschachtelten Abfrage. Also sollte ich 'mit' nicht 'laden' verwenden.

$event = Event::find($id); 
$event->load(['dates' => function($query) 
      { 
       $query->with(['sessions' => function($query) 
            { 
             $query->orderBy('starts_at', 'asc'); 
            } 
       ])->orderBy('date', 'asc'); 
      } 
    ]);