如何在Laravel中使用自定义查询实现无限滚动? 类似的东西:
$query = Select * from table join table2 on condition where condition order by c1 ;
$l = DB::select($query)->paginate(12);
我有5个州的州,地区,城市,类别和price_range。用户可以搜索字段1到5中的任何一个。然后我有一些其他的url参数来处理像排序一样。
因此,如果我使用自定义查询,那么我可以连接来自url的接收值,并一次运行查询。
这是我的情景。最后的查询看起来就像我上面发布的那样。
TIA
答案 0 :(得分:0)
对于你的情况,你可以链接这样的条件:
$query = DB::table('table1')
->join('table2', 'table1.id', '=', 'table2.table_id');
if ( $request->has('state') && $request->state != '' ) {
//We have a state in the query and it's not empty
$query->where('table1.state', '=', $request->state);
}
if ( $request->has('region') && $request->region != '' ) {
//We have a region in the query and it's not empty
$query->where('table1.region', '=', $request->region);
}
//We finished checking all our conditions
//Finishing the query now...
$l = $query->paginate(12);