Navegación
La navegación le permite a usted o a su equipo mostrar enlaces dinámicos que se adaptan automáticamente a los permisos del usuario. Si bien esto se puede lograr de forma básica en Laravel usando directivas Blade, cuando se tienen estructuras de árbol complejas con nodos anidados, gestionar la navegación se vuelve un proceso tedioso.
Problema que Resuelve
Section titled “Problema que Resuelve”Considere el siguiente escenario de estructura de módulos:
módulo_A sub_módulo_A1 sub_módulo_A2módulo_B sub_módulo_B1 sub_módulo_B2Para mostrar un enlace de navegación al módulo A, normalmente se apuntaría directamente a uno de sus sub-módulos. Sin embargo, si el usuario no tiene permiso para acceder al sub_módulo_A1, será redirigido a una ruta no autorizada.
Laravel Routing Kit resuelve este problema proporcionando navegación inteligente que:
- Detecta automáticamente qué rutas están disponibles para el usuario
- Redirige al primer sub-módulo accesible
- Oculta enlaces completamente inaccesibles
- Mantiene una estructura de navegación limpia y funcional
Configuración Inicial
Section titled “Configuración Inicial”La configuración de navegación se encuentra en config/routingkit.php:
'navigators_file_path' => [ 'default_file' => 'headerDashboard', 'items' => [ 'dashboard_navigators' => [ 'path' => base_path('routingkit/Navigation/central/rkNavigation.php'), 'support_file' => "object_file_plain", 'only_string_support' => true, ], ]]Parámetros de Configuración
Section titled “Parámetros de Configuración”default_file: Archivo de navegación usado por defecto cuando se inserta en la raízitems: Array de configuraciones de archivos de navegación, donde la clave sirve como identificador único
Configuración de Items
Section titled “Configuración de Items”path: Ubicación del archivo de navegación. Por defecto, el paquete genera un archivo enroutingkit/Navigation/rkNavigation.phpsupport_file: Tipo de soporte del archivo (ver Conceptos Básicos)only_string_support: Habilita soporte únicamente para cadenas (ver Conceptos Básicos)
Estructura de Archivos
Section titled “Estructura de Archivos”El paquete crea automáticamente la estructura de carpetas necesaria:
routingkit/└── Navigation/ └── rkNavigation.php └── [otros archivos de navegación]Puede crear archivos adicionales en esta carpeta o especificar rutas alternativas según sus necesidades.
Uso Básico
Section titled “Uso Básico”Una vez configurada la navegación, puede utilizarla en sus vistas para mostrar menús dinámicos que respetan automáticamente los permisos del usuario actual.
La navegación se integra seamlessly con el sistema de permisos de Laravel Routing Kit, asegurando que los usuarios solo vean y puedan acceder a las secciones apropiadas de su aplicación.