Modul- und Controllergerüste
Generieren Sie Controller, Module und Plugins mit der Befehlszeilenschnittstelle (CLI).
Controller
Abschnitt betitelt „Controller“./nibiru -c productsErstellt zwei Dateien:
application/controller/productsController.phpapplication/view/templates/products.tplDer Controller-Stub:
<?phpnamespace Nibiru;use Nibiru\Adapter\Controller;
class productsController extends Controller{ public function pageAction() { View::assign(['title' => 'Products']); }
public function navigationAction() { JsonNavigation::getInstance()->loadJsonNavigationArray(); }}Die Vorlagestub:
{include 'shared/header.tpl'}<body>{include file="navigation.tpl"}<main class="container"> <h1>{$title}</h1></main>{include 'shared/footer.tpl'}</body>Controller sind nur PHP-Dateien – keine JS- oder CSS-Skelettstruktur, sodass Sie die Verwaltung der Assets selbstständig steuern können.
./nibiru -m billingErstellt:
application/module/billing/├── billing.php├── interfaces/billing.php├── plugins/├── settings/billing.ini└── traits/Die Hauptklasse implementiert IModule und macht einen Konstruktor verfügbar, der die Registrierungskonfiguration des Moduls lädt. Fügen Sie den Flag -g hinzu, um die Graylog-Observer-Wiring standardmäßig einzubinden:
./nibiru -m billing -gWenn -g gesetzt ist, importiert das Scafolding einen Graylog-Observer, fügt ihn im Konstruktor hinzu und gibt bei wichtigen Zustandsänderungen notify() aus – sodass jeder GELF-fähige Graylog-Server die Modulereignisse ohne zusätzliche Anpassungen aufnimmt.
Plugins
Abschnitt betitelt „Plugins“Ein Plugin lebt innerhalb eines Moduls:
./nibiru -p invoices -m billingErstellt 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'] ); }}Plugins erben vom Modul und teilen daher dessen Registry, Einstellungen und Observer-Maschinerie.
Bootstrap (-s)
Abschnitt betitelt „Bootstrap (-s)“./nibiru -s wird nach der Installation (oder nach dem Abrufen eines frischen Checkout) ausgeführt, um:
- Erstellen Sie
application/view/templates_c/undapplication/view/cache/, falls diese fehlen. - Überprüfen und korrigieren Sie die Berechtigungen (schreibbar für den Webserver-Benutzer) dieser Ordner.
- Stellen Sie sicher, dass die erforderlichen PHP-Erweiterungen geladen sind.
- Überprüfen Sie, ob der Datenbanktreiber in Ihrer INI-Datei von diesem Binärbuild unterstützt wird.
Es ist sicher, mehrmals zu führen.
Cache leeren (-cache-clear)
Abschnitt betitelt „Cache leeren (-cache-clear)“Löscht sowohl den Smarty-Kompilierungs-Cache als auch den gerenderten HTML-Cache:
./nibiru -cache-clearFühren Sie nach einer Bereitstellung aus, wenn:
- Sie
.tpl-Dateien geändert haben, - Sie die
[ENGINE]-Caching-Einstellungen geändert haben, - Sie Smarty-Plugins modifiziert haben.
Der Cache wird beim nächsten Anfrage erneut generiert.