首页 文章

Eloquent Eager Loading Constraint Limit

提问于
浏览
2

我有一个帖子和评论模型 .

Post与Comment有很多关系 . Comment与Post具有belongsTo关系 .

我想热切地用他们的评论加载帖子,但我想限制为每个帖子只获得3条评论 . 我怎么能通过Eloquent做到这一点?

Post::with(array('comments' => function($query)
{
  $query->take(3);
}))->take(10)->get();

但是这个约束只会为所有10个帖子加载3条评论,而不是每个帖子3条评论 .

如果这还不能通过Eloquent实现,那么还有其他解决方案还能实现预先加载吗?

谢谢

1 回答

  • 0

    这不是laravel限制,而是SQL限制 .

    最佳选择是不使用预先加载并将结果缓存为性能 .

相关问题