【发布时间】:2020-10-27 10:21:08
【问题描述】:
我正在尝试进行服务器端搜索并想出了这个雄辩的查询...
public function search(Request $request) {
$data = User::with('instruments')
->where('user_type', 'teacher')
->orWhere('fname', 'like', '%' . $request->term . '%' )
->orWhere('fname', 'like', $request->term . '%' )
->orWhere('lname', 'like', '% ' . $request->term . '%' )
->orWhere('lname', 'like', $request->term . '%' )
->orWhere('email', 'like', '% ' . $request->term . '%' )
->orWhere('email', 'like', $request->term . '%' )
->orWhere('profession', 'like', '%' . $request->term . '%' )
->orWhere('profession', 'like', $request->term . '%' )
->limit(10)
->get();
return response()->json($data);
}
我几乎实现了我想要的。例如,当我搜索john 时,它会为我提供所有名称中包含john 的用户。问题是,虽然搜索是正确的并且知道我声明了where('user_type', 'teacher'),结果集仍然给我的用户studentuser_type
【问题讨论】: