Módulos y Controladores de Esqueleto
Genera controladores, módulos y complementos con la CLI.
Controladores
Sección titulada «Controladores»./nibiru -c productsCrea dos archivos:
application/controller/productsController.phpapplication/view/templates/products.tplEl esqueleto del controlador:
<?phpnamespace Nibiru;use Nibiru\Adapter\Controller;
class productsController extends Controller{ public function pageAction() { View::assign(['title' => 'Products']); }
public function navigationAction() { JsonNavigation::getInstance()->loadJsonNavigationArray(); }}El plantilla stub:
{include 'shared/header.tpl'}<body>{include file="navigation.tpl"}<main class="container"> <h1>{$title}</h1></main>{include 'shared/footer.tpl'}</body>Los controladores son archivos PHP únicamente — no hay estructura de JS o CSS, por lo que usted mantiene el control del enlace de activos.
Módulos
Sección titulada «Módulos»./nibiru -m billingCrea:
application/module/billing/├── billing.php├── interfaces/billing.php├── plugins/├── settings/billing.ini└── traits/La clase principal implementa IModule y expone un constructor que carga la configuración del registro del módulo. Agrega la bandera -g para incluir el enrutamiento del observador de Graylog por defecto:
./nibiru -m billing -gCuando se establece -g, el esqueleto importa un observador Graylog, lo adjunta en el constructor y emite notify() en los cambios de estado clave — por lo que cualquier servidor de Graylog capaz de GELF recoge eventos del módulo sin necesidad de conexiones adicionales.
Plugins
Sección titulada «Plugins»Un complemento vive dentro de un módulo:
./nibiru -p invoices -m billingCrea application/module/billing/plugins/invoices.php:
<?phpnamespace Nibiru\Module\Billing\Plugin;use Nibiru\Module\Billing\Billing;
class Invoices extends Billing{ public function listOpen(): array { return \Nibiru\Pdo::fetchAll( 'SELECT * FROM invoices WHERE status = :s ORDER BY due_date', [':s' => 'open'] ); }}Los plugins heredan del módulo, por lo que comparten su registro, configuración y mecanismo de observadores.
Bootstrap (-s)
Sección titulada «Bootstrap (-s)»./nibiru -s se ejecuta después de la instalación (o después de hacer un nuevo checkout fresco) para:
- Crea
application/view/templates_c/yapplication/view/cache/si faltan. - Verifica los permisos (escribibles por el usuario del servidor web) en esas carpetas.
- Verifica que las extensiones de PHP requeridas estén cargadas.
- Verifica que el controlador de base de datos en tu INI sea compatible con esta versión binaria.
Es seguro ejecutarlo repetidamente.
Borrar caché (-cache-clear)
Sección titulada «Borrar caché (-cache-clear)»Borra tanto la caché de compilación de Smarty como la caché de HTML renderizada:
./nibiru -cache-clearEjecuta después de una implementación cuando:
- Cambiaste archivos
.tpl, - Cambiaste la configuración de
cachéde[ENGIN], - Modificaste los complementos de Smarty.
La caché se regenera en la siguiente solicitud.