Laravel 5 User Role Manager
The idea of this package came from laracast laracasts/Users-and-Roles-in-Laravel and now it is built for laravel 5.
Laravel >=5.1
PHP >= 5.5.9
-
Run
composer require "appzcoder/laravel-roles":"dev-master"
-
Add service provider into /config/app.php file.
'providers' => [ ... Appzcoder\LaravelRoles\LaravelRolesServiceProvider::class, ],
-
Publish migrations
php artisan vendor:publish
-
Run migrate command
php artisan migrate
-
Include UserRoles trait to your user model located at /app/User.php
use Appzcoder\LaravelRoles\Traits\UserRoles; class User extends Model implements AuthenticatableContract, CanResetPasswordContract { use Authenticatable, CanResetPassword, UserRoles;
Use the routes as bellow.
Route::get('/roles', function () {
/* Create user if needed
App\User::create([
'name' => 'Sohel Amin',
'email' => '[email protected]',
'password' => bcrypt('123456'),
]);
*/
$user = App\User::first();
/* Create roles
$role = new Appzcoder\LaravelRoles\Models\Role;
$role->name = 'admin';
$role->save();
*/
/* Assign and remove role from user
$role = Appzcoder\LaravelRoles\Models\Role::whereName('admin')->first();
$user->assignRole($role);
//$user->removeRole(2);
*/
return $user->roles;
});
Route::get('/admin', ['middleware' => 'role:admin', 'uses' => 'AdminController@index']);
##Author