2016-09-18 95 views
0

一個簡單的查詢來獲得一些額外的信息傳遞給一個視圖,產生一個不必要的複雜結果。結果是一個包含具有我感興趣的屬性的對象的數組。簡單的laravel查詢

是不是有一種簡單的方法來獲取屬性?

$TheDriver = DB::table('rentals') 
     ->join('users', 'users.id', '=', 'rentals.renter_id') 
     ->select('users.name') 
     ->where('users.id', '=', $Car->Driver) 
     ->distinct() 
     ->get(); 

var_dump($TheDriver);產生這種

array(1) { [0]=> object(stdClass)#236 (1) { ["name"]=> string(6) "Mr Tourist" } } 

我想簡單地得到結果「旅遊先生」

回答

0

您可以使用pluck()方法來只獲取某些列。

$TheDriver = DB::table('rentals') 
     ->join('users', 'users.id', '=', 'rentals.renter_id') 
     ->select('users.name') 
     ->where('users.id', '=', $Car->Driver) 
     ->distinct() 
     ->pluck('name'); 
0

,如果你只得到一個記錄試試這個。

$TheDriver = DB::table('rentals') 
     ->join('users', 'users.id', '=', 'rentals.renter_id') 
     ->select('users.name') 
     ->where('users.id', '=', $Car->Driver) 
     ->distinct() 
     ->first(); 

得到單個對象上面的查詢。