2016-04-25 3 views
0

Я использую Laravel 5.2 и Zizaco/entrust 5.2.x.
Как контролировать доступ роли к другому пути?
Например:
Маршрут администратора, как это:Laravel 5.2 и `Zizaco/entrust`: как контролировать доступ роли к другому пути?

Route::group(['middleware' => 'web'], function() { 
    Route::auth(); 
    Route::group(['prefix' => 'admin','namespace' => 'Admin'], function() { 
     Route::resource('dashboard', 'DashboardController'); 
    }); 
}); 

Я хотел бы, что роль admin может получить доступ к http://www.example.com/admin/dashboard/,
другие роли можите получить доступ к нему, Что я должен делать?

+0

TRY Laravel (в https://laravel.com/docs/master/middleware) –

+0

Проверьте это может быть полезными [Zizaco роль разрешения и промежуточный слой] (http://stackoverflow.com/questions/36152456/laravel-5-2-integrate-entrust-package-create-role-and-permissions-and-access-i/36155221 # 36155221) –

+0

Проверьте ниже url, это может помочь вам [разрешения на роль Zizaco] (http://stackoverflow.com/questions/36152456/laravel-5-2-integrate-entrust-package-create-role-and-permissions-and-access-i/36155221#36155221) –

ответ

1

Вы можете проверить роль администратора в промежуточном программном обеспечении. Поскольку вы используете zizaco/доверенность, вы можете проверить роль с помощью hasRole.

Используйте этот код в промежуточном Интернете. [Промежуточный слой]

public function handle($request, Closure $next) 
    { 
     if (!$user->hasRole('admin')) { 
      return redirect('home');//Redirect to any page you wish. 
     } 
    } 
Смежные вопросы