我在 Laravel 中有一个资源,我用 ArtistsController 调用了艺术家。我想为某些页面添加过滤器,但不是全部。我知道我可以向资源控制器中的所有功能/视图添加一个过滤器,如下所示:
public function __construct()
{
$this->beforeFilter('auth', array('except' => array()));
}
如何将 beforeAuth 过滤器仅添加到某个视图/功能?我希望用户登录以进入“索引”视图,但我希望用户能够进入“显示”页面而不必登录:
public function index()
{
$artists = Artist::all();
return View::make('artists.index', compact('artists'))
->with('artists', Artist::all())
->with('artists_new', Artist::artists_new());
}
public function show($id)
{
$artist = Artist::find($id);
return View::make('artists.show', compact('artist'))
->with('fans', Fan::all());
}
有没有办法做到这一点?谢谢你。