强制 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
我有一个 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