如何为laravel中的嵌套评论添加分页?
how to add pagination to the nested comments in laravel?
class Nested extends Model{
public function nestedfunc()
{
return $this->hasMany(Nested::class, 'parent_id');
}
public function childnestedfunc()
{
return $this->hasMany(Nested::class, 'parent_id')->with('nestedfunc');
}
}
//这是我的递归模型函数。
如何将分页添加到嵌套评论的根部。我将所有评论存储到同一个 table
- root 评论 1 - root 1 的嵌套评论....
- 根注释 2 - 根注释 2 的嵌套注释 ....
- 分页根评论
- 根注释 3 - 根注释 3 ....
- root comments 4 -root 4 的嵌套comcomes.....
- 对根评论进行分页
- 等等
这里不需要两个单独的函数,关系可以递归调用它们自己,所以首先将你的关系更改为此
public function children()
{
return $this->hasMany(Nested::class, 'parent_id')->with('children');
}
然后对于您的查询,您可以
Nested::where('parent_id', null)->with('children')->paginate();
当我构建嵌套评论模型时,我还添加了一个范围以使其更具可读性
public function scopeTopLevel($query)
{
return $query->where('parent_id', null);
}
所以现在我的控制器中的调用只是
Comment::topLevel()->with('children')->paginate()
class Nested extends Model{
public function nestedfunc()
{
return $this->hasMany(Nested::class, 'parent_id');
}
public function childnestedfunc()
{
return $this->hasMany(Nested::class, 'parent_id')->with('nestedfunc');
}
}
//这是我的递归模型函数。 如何将分页添加到嵌套评论的根部。我将所有评论存储到同一个 table
- root 评论 1 - root 1 的嵌套评论....
- 根注释 2 - 根注释 2 的嵌套注释 ....
- 分页根评论
- 根注释 3 - 根注释 3 ....
- root comments 4 -root 4 的嵌套comcomes.....
- 对根评论进行分页
- 等等
这里不需要两个单独的函数,关系可以递归调用它们自己,所以首先将你的关系更改为此
public function children()
{
return $this->hasMany(Nested::class, 'parent_id')->with('children');
}
然后对于您的查询,您可以
Nested::where('parent_id', null)->with('children')->paginate();
当我构建嵌套评论模型时,我还添加了一个范围以使其更具可读性
public function scopeTopLevel($query)
{
return $query->where('parent_id', null);
}
所以现在我的控制器中的调用只是
Comment::topLevel()->with('children')->paginate()