Authentication 如何使beforeAuth仅适用于Laravel 4中的某些视图/函数

Authentication 如何使beforeAuth仅适用于Laravel 4中的某些视图/函数,authentication,laravel,laravel-4,Authentication,Laravel,Laravel 4,我在拉雷维尔有一个资源,我给艺术家们打了电话,有一个艺术家控制者。我想在一些页面中添加过滤器,但不是全部页面。我知道我可以向资源控制器中的所有函数/视图添加过滤器,如下所示: public function __construct() { $this->beforeFilter('auth', array('except' => array())); } 如何仅将beforeAuth筛选器添加到某个视图/函数?我希望用户能够登录以进入“索引”视图,但我希望用

我在拉雷维尔有一个资源,我给艺术家们打了电话,有一个艺术家控制者。我想在一些页面中添加过滤器,但不是全部页面。我知道我可以向资源控制器中的所有函数/视图添加过滤器,如下所示:

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());

    }

有办法做到这一点吗?多谢各位

不确定这是否有帮助,但如果我正确理解您的问题,您可以只使用键而不是


尽管这仍然会出现在构造函数中。

我会将要应用于此的函数放入数组中吗?是的,我在答案中添加了更多细节。只需在数组中列出要限制的方法。有关控制器筛选器的更多详细信息,请参见此处:
$this->beforeFilter('auth', array('only' => array('login', 'foo', 'bar')));