Mysql 带分页的Laravel快速加载

Mysql 带分页的Laravel快速加载,mysql,laravel,pagination,laravel-5,eloquent,Mysql,Laravel,Pagination,Laravel 5,Eloquent,简而言之,到目前为止,我的帖子有很多评论,我可以对帖子进行分页,这样用户就可以在页面之间导航到另一个页面。 因此,每篇文章都有很多评论,我不想一次加载所有评论,我还想在评论中添加paginator,以便在用户每次按下某个按钮时都有大量评论,并使总评论计数和paginator对象中的所有可用内容我所做的是这样的: public function PhotoFeed() { return PhotoFeed::with('comments')

简而言之,到目前为止,我的帖子有很多评论,我可以对帖子进行分页,这样用户就可以在页面之间导航到另一个页面。 因此,每篇文章都有很多评论,我不想一次加载所有评论,我还想在评论中添加paginator,以便在用户每次按下某个按钮时都有大量评论,并使总评论计数和paginator对象中的所有可用内容我所做的是这样的:

       public function PhotoFeed()
       {
         return PhotoFeed::with('comments')
                  ->whereIn('user_id',$this->getFrom())
                  ->simplePaginate(5);

        }
在PhotoFeed模型中:

        public function comments()
        {
         return $this->hasMany(Comment::class ,'feed_id');
        }
但我希望能够添加paginator来评论这样的关系

        public function comments()
        {
         return $this->hasMany(Comment::class ,'feed_id')->paginate(2);
        }
因为我后来知道relation函数必须返回relation类型的对象

我也尝试过这个解决方案,它很有效

         protected $appends = ['commentspaginator'];

         public function getCommentsPaginatorAttribute()
         {
         return 
           $this->hasMany(Comment::class ,'feed_id')->with('user')->paginate(3);

          }
但问题在于,它打破了急于加载的局面,因此每个帖子都必须自己进行查询,这很可能对性能不利

还有想法