Basic Usage of Roles & Permissions
Learn to use the roles and permissions system in Filament Tenancy.
Add HasRoles Trait
Section titled “Add HasRoles Trait”Add the HasRoles trait to your User model:
use AngelitoSystems\FilamentTenancy\Concerns\HasRoles;
class User extends Authenticatable{ use HasRoles;}Assign Roles
Section titled “Assign Roles”// Assign a role$user->assignRole('admin');
// Assign multiple roles$user->syncRoles(['admin', 'editor']);
// Remove a role$user->removeRole('admin');Verify Roles
Section titled “Verify Roles”// Check if user has a specific role$user->hasRole('admin');
// Check if user has any of the given roles$user->hasAnyRole(['admin', 'editor']);
// Check if user has all of the given roles$user->hasAllRoles(['admin', 'editor']);Manage Permissions
Section titled “Manage Permissions”// Give permission to user$user->givePermissionTo('manage users');
// Sync permissions$user->syncPermissions(['manage users', 'view dashboard']);
// Revoke permission$user->revokePermissionTo('manage users');
// Verify permissions$user->hasPermissionTo('manage users');$user->hasAnyPermission(['manage users', 'edit posts']);Default Roles
Section titled “Default Roles”- Super Admin: Full access
- Admin: Limited administrative access
- User: Basic permissions