2014-07-22 6 views
0

Laravel 앱에 인증을 추가하려고합니다. 사용자는 잘 로그인 할 수 있지만 페이지에 접속하는 사람은 누구나 로그인 할 수 있습니다. 누군가가 응용 프로그램 내에서 페이지를 북마크에 추가하고 로그인하지 않고 이동하기를 원하지 않습니다.필터가 적용될 때 라우트 라우트 오류가 발생합니다.

마찬가지로 필터를 살펴 보았습니다. 내가 필터를 추가 한 경로 중 하나 또는 필터링 된 경로에 링크하는 페이지로 이동할 때 다음 오류가 발생하므로 올바르게 구현하지 않아야합니다. call_user_func_array() expects parameter 1 to be a valid callback, no array or string given

Routes.php

Route::get('/admin/login',   '[email protected]'); 
Route::get('/admin/races',   array('before' => 'auth', '[email protected]')); 
Route::get('/admin/geographies', array('before' => 'auth', '[email protected]')); 
Route::get('/admin/candidates',  array('before' => 'auth', '[email protected]')); 

Filters.php 내가 필터 이전의 간섭이 주위에 작업 페이지가, 그래서이 구현에 대해 무엇을 놓치고 있었다

Route::filter('auth', function() { 
    if (Auth::guest()) return Redirect::guest('/admin/login'); 
}); 

?

답변

1

다음은 문서 작업 컨트롤러 필터를 추가하는 방법에 대한 말씀입니다 :

Attaching A Filter To A Controller Action:

경로 : (('사용자', 배열을 얻을 '전'=> '오래된'

을, 'uses'=> 'UserController @ showProfile'));

즉, 배열 키 uses이 누락되었습니다. 다음과 같이 시도하십시오.

+0

오 마이 갓, 당신은 돈에 옳습니다. 나는 물건을 뒷받침 할 때 그 부분을 취소해야합니다. 나는 원래 같은 식으로 일을했다. 5 분 후에 나는 뭔가를 undid하고 일을 그만 둔다. 그게 틀림 없어. 정말 고맙습니다!! – Lisa