我正在使用Dingo laravel api软件包。如您所知,此软件包具有许多功能,包括分页结果。
假设在控制器方法中我想返回应用程序的分页Post
。像这样:
public function category_posts ($cat_id)
{
$posts =
Post::where('active',true)
->whereHas(
'categories', function ($query) use ($cat_id) {
$query->where('categories.cat_id', $cat_id);
})
->paginate(10);
return $this->paginator($posts, new PostTransformer());
}
如您所见,我首先选择所有帖子,然后对它们进行分页,然后在每页中返回10个帖子。
但是有些帖子是固定的。这些帖子的pin
字段为 true 。
现在我想要,当用户请求帖子时,如果当前页面为 1 ,我选择该 pin帖子并添加到$posts
集合中。但是我不知道该怎么办?
更新:
每个类别可以有一些帖子,另一方面,每个 post 都属于许多类别。在这种情况下,我具有 manyToMany 关系在职位和类别之间。此外,当用户请求类别帖子时,我想添加分配给该类别的最新大头贴