2015-05-18 19 views
5

Jak mogę posortować dane zwracane z zapytania przy użyciu adresu , gdzie znajduje się? W moim zapytaniu muszę uzyskać dane użytkowników, które id istnieją na tabeli zainteresowań, ale muszę posortować je przy użyciu kolumny datetime z zainteresowań. Ale zapytanie zwrotne w ogóle nie sortuje danych.orderBy na temat zapytania whereHas w Laravel 4.2

Oto moje fragmenty kodu na wypadek, gdyby pomogły mi zrozumieć mój problem.

modelu (nazwa: User)

//***relationship***// 
public function interest(){ 
    return $this->belongsTo('Interest','id','interest_by'); 
} 

Controller

$userInterested = User::whereHas('interest',function($q) use ($id) { 
    return $q->where('interest_on', $id) 
       ->orderBy('datetime'); 
}); 
$userQuery = $userInterested->get(); 
return $userQuery; 
+0

oh, udaje mi się dostać rozwiązanie dla mojego problemu, przy użyciu join() na konstruktora kwerendy wystarczającą m Potrzebuję. Ale jeśli masz jakieś inne rozwiązania, prosimy pisać. – slverstone

Odpowiedz

0

usuń powrót skąd ma i spróbuj this.like

$userInterested = User::whereHas('interest',function($q) use ($id) { 
    $q->where('interest_on', $id) 
      ->orderBy('datetime'); 
})->get(); 
return $userInterested; 
0
$userInterested = User::whereHas('interest',function($q) use ($id) { 
    return $q->where('interest_on', $id); 
})->orderBy('datetime'); 
$userQuery = $userInterested->get(); 
return $userQuery; 
+0

wypróbowany i nie działa, próbuje wyszukać _datetime_ na ** użytkowników ** zamiast tego na ** odsetki ** – slverstone