我想显示cv表中的数据,其中user_id是$ request-> id。 另外,过滤完成了,所以我不得不放很多orWhere。 因此,我的代码无法正常工作。 抱歉的问题有点令人困惑。
$search = $request->input('search.value');
$results = cv::with(['industrySegments','jobLocations','jobPositions','languages'])->where('user_id',$request->id);
$results->orWhere('name','LIKE',"%{$search}%");
$results->orWhere('gender','LIKE',$search);
$results->orWhere('contact','LIKE',$search);
$results->orWhere('contact2','LIKE',$search);
此代码无效。 每当我在搜索按钮中键入某些内容时,它就会显示不应显示的数据。 我只想显示user_id为$ request-> id的数据。
答案 0 :(得分:0)
测试下一个代码:
$results = cv::with(['industrySegments','jobLocations','jobPositions','languages']);
if(!empty($request->id))
{
$results->where('user_id',$request->id);
}
else
{
$results->orWhere('name','LIKE',"%{$search}%");
$results->orWhere('gender','LIKE',$search);
$results->orWhere('contact','LIKE',$search);
$results->orWhere('contact2','LIKE',$search);
}
答案 1 :(得分:0)
我认为您想做的是advanced where
您的查询将是这样
$results = cv::with(['industrySegments','jobLocations','jobPositions','languages'])->where('user_id',$request->id)->where(function($q)use($search){
$q->where('name','LIKE',"%{$search}%")->orWhere(..........;
})->get();
因此,您可以在哪里/或在哪里玩耍