目前我正在使用nicolaslopezj/searchable作为我的laravel搜索。在简单代码中实现搜索和过滤的最佳方式是什么?
搜索很好,但我还想添加一个过滤器和我的过滤器,如性别,职业或地点。
例如,在这种情况下:
1 --- Jane Doe的--- F --- A类---美国
2 --- John Doe的--- ---中号B类--- PH
我当前的代码是这样的:
if (isset ($keyword))
$voters = Voter::search($request->keyword)->paginate(10);
if (isset ($keyword) && isset($request->sex))
$voters = Voter::search($request->keyword)->where('sex', $request->sex)->paginate(10);
if (!isset($keyword) && isset($request->sex))
$voters = Voter::where('sex', $request->sex)->paginate(10);
if(isset($keyword && !isset($request->sex)
$voters = Voter::search($request->keyword)->paginate(10);
所以任何想法如何最大限度地减少了很多的条件呢?有没有一个单行代码/查询这个?