【发布时间】:2018-11-22 12:55:39
【问题描述】:
我想编写使用提供的短语来搜索表的搜索查询,返回与短语的任何部分匹配的值。 此代码有效,但结果一无所获。比如table有'abcde',我搜索'bcd',结果什么都没有。
protected function fullTextWildcards($term)
{
return str_replace(' ', '*', $term) . '*';
}
public function index(Request $request, $slug = null)
{
$query = $slug
? \App\Tag::whereSlug($slug)->firstOrFail()->articles()
: new \App\Article;
if ($keyword = request()->input('q')) {
$raw = 'MATCH(title,content) AGAINST(? IN BOOLEAN MODE)';
$query = $query->whereRaw($raw, [$this->fullTextWildcards($keyword)]);
}
$articles=$query->latest()->paginate(10);
return view('articles.index',compact('articles'));
}
如何将所有内容链接在一起以达到预期的效果?
提前致谢。
【问题讨论】:
标签: php sql laravel query-builder