首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Laravel Eloquent:对all()的结果排序

Laravel Eloquent:对all()的结果排序
EN

Stack Overflow用户
提问于 2013-07-02 23:18:43
回答 8查看 257K关注 0票数 260

我被一项简单的任务卡住了。我只需要对这次通话的结果进行排序

$results = Project::all();

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

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

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

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2013-07-03 01:37:44

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

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

这将以正确的顺序返回所有结果。

票数 458
EN

Stack Overflow用户

发布于 2016-03-11 00:58:22

如果您仍然想使用all(),那么您仍然可以使用sortBy (在集合级别)而不是orderBy (在查询级别),因为它返回一个对象集合。

升序

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

降序

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

有关更多详细信息,请查看有关集合的文档。

https://laravel.com/docs/5.1/collections

票数 137
EN

Stack Overflow用户

发布于 2016-02-12 20:56:48

此外,为了支持前面的答案,还可以通过添加descasc升序作为第二个参数来对其进行排序。

$results = Project::orderBy('created_at', 'desc')->get();
票数 44
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17429427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档