2013-04-01 8 views
6

Próbuję ustalić, jak przetestować, czy zalogowany użytkownik w Laravel 4 może odwiedzić poprawne konto użytkownika.Test zalogowany Użytkownik ma poprawny identyfikator w Laravel 4

W tej chwili jest to w pliku routes.php.

Route::get('user/{id}', array('before' => 'auth', function(){ 
    // logged in user 
    // but can visit any account!! 
})); 

Jak ograniczyć to więc użytkownik/1 widział tylko profil, jeżeli jest obecny zalogowanych użytkowników id?

Auth::user()->id 

Zwraca zalogowany id przetestowania przed, ale nie mogę dowiedzieć się, jak napisać filtr, który sprawdza jest równa {id} w adresie URL.

Proszę pomóc! Dzięki.

Odpowiedz

6

Otrzymałem pomoc poprzez kanał iracki Laravel.

W ten sposób poszedłem.

Route::filter('user', function($route, $request) 
{ 
    if($request->segment(2) != Auth::user()->id) 
    { 
     return Redirect::to('/login'); 
    } 
}); 

Następnie na mojej trasie.

Route::get('user/{id}', array('before' => 'auth|user', 'uses' => '[email protected]')); 
Powiązane problemy