在使用搜索功能时,我的laravel应用程序遇到问题。这是我的搜索功能代码
use DB;
public function search(Request $request){
$query = $request->input('query');
$products = DB::table('products')
->where('product_title','like','%'.$query.'%')
->get();
让我们设想一下,我的应用程序中的产品名称是“演示产品”。如果我想用de/d/mo/pro等关键字搜索产品,没有问题。这些关键字显示了一些结果。但是,如果我用“deemoo”/“productt”等关键字搜索[打算展示“演示产品”],如何得到搜索查询结果呢?如果可以,请给我一些建议。提前谢谢:)
1条答案
按热度按时间iq3niunx1#
您需要在您选择的数据库中使用全文搜索索引。您可以在这里阅读有关mysql全文索引的更多信息。
要将索引与laravels一起使用,您需要使用原始查询。
为了使语法更好一点,可以在产品模型中添加一个作用域。
您可以通过以下方式调用作用域来使用它。