我正在考虑一个最好的解决方案,同时一个懒惰的解决方案,在Laravel的雄辩结果中过滤收集。我想过滤所有控制器中的所有$ videos集合。是否可以不重写控制器而是将其放入模型中?
这是我的过滤器代码:
$videos = $videos->filter(function( $video ){
return $video->isPublished();
});
答案 0 :(得分:0)
使用查询范围。您可以向here学习。在你的情况下,它会是这样的:
class Video extends Eloquent {
public function scopePublished($query)
{
return $query->where('published', '1');
}
}
class VideosController extends BaseController {
public function showPublishedVideos()
{
return View::make('published_videos')
->with('videos', Video::published()->take(10)->get());
}
}