2014-12-03 21 views
2

我無法相對於在usersgroups表的內容進行篩選,以username問題Eager Load Constraints貪婪加載限制使用過濾器在Laravel

public function username() 
{ 
    return $this->belongsTo('User','fk_users_id')->select(['id','username']); 
} 

我曾嘗試使用下面的代碼,但它過濾只有users數據不是groups數據

$groups  = Groups::with(array('username' => function($query) use ($keyword) 
                 { 
                  $query->where('username', 'like', '%'.$keyword.'%'); 

                 })) 
       ->where('status',1)->paginate($paginateValue); 

任何幫助,歡迎...

+0

不應該是'array('user'=> function($ query)'?或者'用戶名'是一張桌子? – lukasgeiter 2014-12-03 07:57:10

+0

'username'是一個函數 – Ronser 2014-12-03 08:22:15

回答

0

認爲它應該是這樣的:

Groups::with('User')->whereHas('User', function($q) use ($key){ 
$q->where('username', 'like', '%'.$key.'%'); 
})->where('status', 1)->paginate($pagVal);