@extends('layouts.app') @section('breadcrumb', 'Roles y permisos') @section('content') @if(session('status')) @endif

Cómo funciona

Un rol (admin, contabilidad, etc.) se asigna a cada usuario. Los permisos definen acciones concretas: subir facturas, importar el banco, ver el dashboard… Si un usuario no tiene un permiso, no verá el menú ni podrá acceder a esa sección.

Permiso activo para el rol
Sin acceso

Referencia de permisos

@foreach($permissions as $permission) @php $meta = config('permissions.permissions.'.$permission->name, []); @endphp
{{ $meta['label'] ?? $permission->name }} {{ $permission->name }}

{{ $meta['description'] ?? 'Sin descripción disponible.' }}

@if(!empty($meta['unlocks']))

Habilita: {{ $meta['unlocks'] }}

@endif
@endforeach

Asignar permisos por rol

@foreach($roles as $role) @php $roleMeta = config('permissions.roles.'.$role->name, []); @endphp

{{ $roleMeta['label'] ?? $role->name }}

{{ $role->name }}
@if(!empty($roleMeta['description']))

{{ $roleMeta['description'] }}

@endif @if(!empty($roleMeta['for']))

Perfil recomendado: {{ $roleMeta['for'] }}

@endif
@csrf @method('PUT')
@foreach($permissions as $permission) @php $meta = config('permissions.permissions.'.$permission->name, []); $checked = $role->permissions->contains('name', $permission->name); @endphp @endforeach
@endforeach
@endsection