如何在laravel 5中使用表单选项对表进行排序

时间:2016-05-24 01:58:25

标签: php laravel-5.2

我想用用户输入(表单选项)

对表进行排序

我认为这是:

<select name="orderby" id="orderby">
    <option value="asc">Ascending</option>
    <option value="desc">Descending</option>
</select>

控制器:

 public function status()
{
    $dosen = DB::table('dosen')->orderBy('status')->paginate(7);
    return view('dosen.status', compact('dosen'));
}

当用户点击“降序”或“升序”选项时,如何将排序表更改为​​desc?

1 个答案:

答案 0 :(得分:0)

如果您不想使用Ajax,可以始终使用Laravel的收集方法。一旦你开始流利地使用它们,它们就非常强大。

在您的示例中,您可以简单地消除orderBy子句,并根据用户输入使用sortBy()和sortByDesc()方法。

然后,您可以使用chunk()方法创建自己的分页。使用您的示例,按7个组的组以降序对“dosen”表的所有行进行排序:

$dosen = DB::table('dosen')->get();     

$dosenSortedDesc = $dosen->sortByDesc('status')->chunk(7);