我正在尝试运行一个雄辩的查询来按类别,然后是标题,然后是价格来过滤结果。类别和标题的工作原理应该如此,但是当我添加BETWEEN以便在两个价格之间进行搜索时,它就破了。有谁知道我如何解决我的疑问?
@foreach(Inventory::where('category', '=', $cat)->where('title', 'LIKE', '%'. $search_query .'%')->where('price', 'BETWEEN', $min_price, 'AND', $max_price)->get() as $search_results)
答案 0 :(得分:6)
您正在寻找whereBetween()
。首先,将Eloquent查询放入您的控制器中:
$inventory = Inventory::where('category', $cat)
->where('title', 'like', '%' . $search_query . '%')
->whereBetween('price', [$min_price, $max_price])
->get();
然后,将$inventory
变量传递给您的视图:
return view('my.view.path', compact('inventory'));
最后,在您的视图中,您可以遍历结果:
@foreach($inventory as $search_results)
有关详细信息,请参阅Laravel Docs。