【发布时间】:2013-01-22 10:44:44
【问题描述】:
我有一个 Post 模型和一个 Tag 模型成多对多关系。
当我收到帖子和帖子的所有标签时,我会使用它,它工作得很好:
$posts = Post::with(array('tags'))
->where('cat_id', '=', $cat->id)
->where_published(1)
->order_by('created_at', 'desc')
->paginate('10');
上面的代码显示了最新创建的帖子并对其进行分页。
我想实现同样的目标,但以另一种方式,从标签开始,获取按 created_at 列分页和排序的帖子列表。
Tag::with(array('posts'))
->where('tagname', '=', $tag)
->first();
这可行,但会显示所有帖子,我希望它们分页、排序和过滤 where_published(1)。
这可以通过 eloquent 使用预先加载来完成吗(没有预先加载我已经知道这样做但是会产生太多查询)?
我在哪里可以放置过滤器以及如何让它们分页?
【问题讨论】:
标签: laravel eloquent laravel-3