Configuración de Módulos para Visibilidad en el Backend de CoreThink

Para que un módulo desarrollado en CoreThink aparezca en el panel de administración, se requiere una configuración precisa del archivo de definición y la implementación de controladores específicos. Este proceso integra conceptos heredados de ThinkPHP, permitiendo una gestión modular eficiente.

En primer lugar, es esencial definir el archivo de configuración del módulo, que incluye metadatos y la estructura del menú. Este archivo se ubica en el directorio raíz del módulo y debe ser analizado cuidadsoamente para evitar bucles jerárquicos que puedan sobrecargar el servidor.

<?php
// Archivo de configuración del módulo
return [
    'module_details' => [
        'identifier'        => 'GestorEquipos',
        'label'             => 'Equipos',
        'icon_css'          => 'fa fa-tools',
        'icon_color'        => '#4A90E2',
        'summary'           => 'Módulo para administrar equipos',
        'author'            => 'Desarrollo Interno',
        'homepage'          => 'https://ejemplo.com',
        'release_version'   => '2.0.0',
        'requirements'      => [
            'Admin' => '1.2.0',
        ],
    ],

    'user_navigation' => [],

    'custom_settings' => [],

    'admin_menus' => [
        '1' => [
            'menu_id'   => '1',
            'parent_id' => '0',
            'label'     => 'Equipos',
            'icon'      => 'fa fa-tools',
        ],
        '2' => [
            'parent_id' => '1',
            'label'     => 'Administración de Equipos',
            'icon'      => 'fa fa-list-ul',
        ],
        '3' => [
            'parent_id' => '2',
            'label'     => 'Configuración de Dispositivos',
            'icon'      => 'fa fa-cog',
        ],
        '4' => [
            'parent_id' => '2',
            'label'     => 'Categorías de Equipos',
            'icon'      => 'fa fa-tags',
        ],
    ],
];
?>

A continuación, se debe crear el controlador que gestiona la vista de administración. Este controlador hereda de una clase base que proporciona autenticación y manejo de plantillas, simplificando la generación de interfaces de usuario.

<?php
namespace GestorEquipos\Admin;

use Admin\Controller\AdminController;
use Common\Util\Think\Page;

class AdminPanel extends AdminController {
    public function renderizarListado() {
        $constructorListas = new \Common\Builder\ListBuilder();
        $constructorListas->establecerTituloPagina('Administrar Equipos')
                          ->agregarColumnaTabla('identificador', 'ID')
                          ->agregarColumnaTabla('nombre_dispositivo', 'Nombre del Equipo', 'texto')
                          ->agregarColumnaTabla('orden_visualizacion', 'Orden', 'número')
                          ->agregarColumnaTabla('estado_actual', 'Estado', 'estado')
                          ->agregarColumnaTabla('acciones', 'Operaciones', 'botones')
                          ->insertarHtmlAdicional('<div class="alert alert-info">Seleccione un elemento del árbol lateral para gestionar.</div>')
                          ->desplegar();
    }
}
?>

Tras implementar estos pasos, el módulo quedará habilitado en el backend tras su instalación, mostrando la tabla de datos y los menús configurados. Es crucial verificar la relación jerárquica de los menús para prevenir errrores de recursividad.

Etiquetas: CoreThink PHP OpenCMF Desarrollo de Módulos Administración Backend

Publicado el 6-16 19:01