强制 Laravel 5.4 始终从第 1 页开始相关实体分页

Force Laravel 5.4 to always start related entity pagination from page 1

我有一个 Post 模型,可以有很多评论。当我在提要中列出 posts 时 - posts 和 post 评论都被分页了。 问题是当我访问不是第一页的 post 提要页面时 - post 评论不是从第一页开始分页的。他们从与 posts.

相同的页面开始

有没有办法始终强制 Laravel 从第 1 页开始相关实体分页?

看起来它发生的原因是两个分页器默认使用相同的 page 查询参数值。见 code.

您可以通过将 paginate() 方法调用的第三个参数提供给类似 'comments_page'.

的内容来更改此行为
$post->comments()->paginate(15, ['*'], 'comments_page');

现在,当您想查看评论的第一页时,您可以将 comments_page 查询参数值传递到查询字符串中。

http://localhost:8000/api/v1/feeds/all-posts?page=2&comments_page=1