我在表页面中有一个页面,其中包含:
id = 1,姓名,姓氏
我在这些字段中找到了表关注者:
page_id,follower_id
我得到了表格用户,其中包含以下字段:
id,name,lastname,photo,friendly_url
我进行了搜索'用户编写的内容以及页面的 $ id :
public function u_followers_search($id) {
$_POST['search']
}
我想使用$ _POST ['搜索']搜索该页面后面的所有用户并显示这些用户...
答案 0 :(得分:0)
Followers::select('users.*')
->leftJoin('users', 'followers.follower_id', '==', 'user.id')
->where('page.id', $id )
->get();
假设您的关注者ID是user.id(关注者表和用户表之间的外键关系)。
答案 1 :(得分:0)
laravel elequent。
//Page.php
public function users()
{
return $this->hasManyThrough(
'App\User',
'App\Follower', // followers model
'page_id', // Foreign key in Follower
'id', // Foreign key in Users
'id', // Local key Page
'follower_id' // Local key Users
);
}
//Controller
public function u_followers_search(Request $request) {
$page = Page::find($request->id);
return $page->load([
'users' => function($query) use ($request){
$query->where('name', 'LIKE', '%'.$request->search.'%')
->orWhere('lastname', 'LIKE', '%'.$request->search.'%');
}
]);
}
来源:https://laravel.com/docs/5.6/eloquent-relationships#has-many-through