我被一项简单的任务困住了。 我只需要安排这次通话的结果

$results = Project::all();

其中Project是一个模型。我试过了

$results = Project::all()->orderBy("name");

但这并没有起作用。从表中获取所有数据并对其进行排序的更好方法是什么?


当前回答

此外,为了支持前一种答案,还可以将其作为第二个参数添加,从而按降序desc或升序asc进行排序。

$results = Project::orderBy('created_at', 'desc')->get();

其他回答

试试这个:

$categories     =   Category::all()->sortByDesc("created_at");

此外,为了支持前一种答案,还可以将其作为第二个参数添加,从而按降序desc或升序asc进行排序。

$results = Project::orderBy('created_at', 'desc')->get();

2017年更新


Laravel 5.4在查询生成器中添加了orderByDesc()方法:

$results = Project::orderByDesc('name')->get();

你的指示需要打电话去取,因为它要带记录和目录

$results = Project::orderBy('name')
           ->get();

例子:

$results = Result::where ('id', '>=', '20')
->orderBy('id', 'desc')
->get();

在本例中,根据“where”对数据进行过滤,并根据从高到低的顺序带来大于20的记录和orderBy目录。

实际上,您可以在查询中执行此操作。

$results = Project::orderBy('name')->get();

这将以适当的顺序返回所有结果。