2016-07-24 50 views
0

我有一個製造商的陣列,現在我想做一個範圍,以獲得只有作爲製造商陣列的價值的產品的結果。Laravel - 如何用一系列值創建一個範圍?

這是我的實際範圍,但它不起作用。

public function scopeManufacturer($query, array $manufacturer) 
{ 
    return $query->where(function($query) use ($manufacturer) { 
     $str = ''; 
     foreach($manufacturer as $man){ 
      $str .= "->where('category', " . $man ; 
     } 

     return $query . $str; 
    }); 
} 

回答

0

您應該使用其中

public function scopeManufacturer($query, array $manufacturer) 
{ 
    return $query->whereIn('category', $manufacturer); 
} 

第一個參數是你在搜索欄的名稱;第二個參數是您嘗試匹配的值的數組。