2016-07-19 5 views
0

Ich mache eine Abfrage die folgende Zeile ein:Unterabfrage in Laravel - Wich()

$items = $this->model->with('subCategory')->get();

Aber ich möchte eine Abfrage innerhalb the with() Methode setzen, weil ich will nur die Einzelteile erhalten aus with() wobei der Status gleich 0 ist.

Wie kann ich das erreichen?

+1

Vielleicht - http://stackoverflow.com/a/38371708/6569866 –

Antwort

1

Diese eagarload Einschränkungen genannt werden, können Sie Ihr Ergebnis mit einem Verschluss

Zum Beispiel

$items = $this->model->with(['subCategory'=>function($q){ 
    $q->whereId('5'); 
    //or any other valid query builder method. 
}])->get(); 

Lassen Sie mich wissen, wie Sie erreichen bekommen.

2

In der L5-Dokumentation gibt es ein "eifriges Laden". Here

$items = $this->model->with(['subCategory' => function ($query) { 
    $query->where('status', 0); }])->get();