我正在尝试在多个模型中搜索字符串。
我只为一张桌子做了一个搜索按钮,这样做非常好。但是无法融入多个表。我怎么能这样做?
<我在NewsController中的:
$query = $request->get('q');
$new = $request->filled('q') ? News::search($query) : News::query();
$new = $new->orderBy('id', 'desc')->paginate(10);
在我的模型中:
public function scopeSearch(Builder $query, $search)
{
$query->whereHas('translations', function ($q) use ($search) {
$q->where('value', 'like', '%' . $search . '%');
})->orWhere('title', 'LIKE', '%' . $search . '%')
->orWhere('sub_body', 'like', '%' . $search . '%')
->orWhere('body', 'like', '%' . $search . '%');
}
这就是观点:
<form name="searchForm" method="get" action="{{route('news_blade')}}">
<input type="text" name="q" id="q" class="search-input">
</form>
提前致谢。