1

Artists という名前のリソース (ArtistsController によって実行される) を制限しようとしています。コントローラーのコンストラクターでこれを直接実行しようとしました:

 public function __construct()
    {
    $this->beforeFilter('auth', array('except' => array()));
    }

そして私のフィルターには、次のものがあります。

Route::filter('auth', function()
{
    if (Auth::guest()) return Redirect::route('fans/landing');
});

私のルートには、次のものがあります。

Route::get('fans/landing', array('uses' => 'FansController@getIndex'))->before('guest');

ただし、これを実行すると (リソース ページの 1 つに移動しようとすると)、次のエラーが発生します。

Unable to generate a URL for the named route "fans/landing" as such route does not exist.

コンストラクト関数を削除すると、ファン/ランディング ページが正常に読み込まれるため、これは奇妙です。また、別のページ (リソースの一部ではない) をリダイレクトします。

Route::get('/fans/home', array('uses' => 'FansController@getHome'))->before('auth');
4

1 に答える 1