我想检索按 created_at 日期排序的帖子,但我也想对结果进行分页。到目前为止,我已经尝试过以下方法:$posts = Post::orderBy('created_at', 'desc')->get();$posts = Post::paginate(10);以上仅返回 10 个结果,并且不按 created_at 日期排序。我想检索按 created_at 日期排序的 10 个帖子。任何帮助表示赞赏。
5 回答
慕森王
TA贡献1777条经验 获得超3个赞
返回的帖子被覆盖的原因是您正在重新分配$posts
变量。请查看以下内容以纠正问题。
Laravel QueryBuilder 允许您将多个过滤器一个接一个地串起来。
在这种情况下,您将按 created_at 日期对帖子进行排序,然后通过分页过滤器检索结果。分页过滤器将替换->get()
.
$posts = Post::orderBy('created_at', 'desc')->paginate(10);
蛊毒传说
TA贡献1895条经验 获得超3个赞
我不确定“如果同时编写两个代码,它会被覆盖”是什么意思,但以下应该可以工作:
$posts = Post::orderBy('created_at', 'desc')->paginate(10);
汪汪一只猫
TA贡献1898条经验 获得超8个赞
你可以像这样使用 paginate 或 simplePaginate
$posts = Post::orderBy('created_at', 'desc')->paginate(10);
详情https://laravel.com/docs/5.8/pagination
- 5 回答
- 0 关注
- 101 浏览
添加回答
举报
0/150
提交
取消