Frage

Wenn ich mich nicht irre, sollten die Bundles von Laravel den hierarchischen MVC-Triaden von Codeigniter ähneln.Ich habe ein in CI erstelltes Projekt und möchte es nach Laravel migrieren, daher versuche ich, einige Funktionen anzupassen.In CI mussten Sie lediglich die HMVC-Erweiterung installieren, eine entsprechende Ordnerstruktur erstellen und schon können Sie auf Ihre neu erstellten Controller zugreifen.In Laravel müssen Sie jedoch, nachdem Sie ein Bundle erstellt haben, es registrieren application/bundles.php beim Hinzufügen

return array('newbundle'),

Gibt es eine Möglichkeit für mich, automatisch alle (gültigen) Bundles zu registrieren, die im Verzeichnis meiner Bundles vorhanden sind?Das heißt, ohne dass jedes neue Bundle explizit registriert werden muss.Mit anderen Worten: Ich möchte Bundles etwas dynamischer gestalten, sodass ich einfach ein Bundle kopieren, in ein anderes Projekt einfügen und sofort mit der Verwendung beginnen kann.

Als Nebenfrage: Hat jemand eine Idee, wie man mit den Bundles von Laravel das erreichen kann, was Wordpress mit seinen Plugins macht:eine Liste aller im Bundle-Verzeichnis installierten Bundles anzeigen, aber nur die ausgewählten aktivieren (registrieren)?

War es hilfreich?

Lösung

Ich verstehe nicht, warum Ihnen niemand die richtige Antwort gegeben hat.Möglicherweise haben Sie inzwischen herausgefunden, wie Sie die Pakete unterwegs automatisch laden können. Wenn nicht, schauen Sie sich bitte das folgende Paket an.

http://bundles.laravel.com/bundle/autobundle

Zu Ihrer zweiten Frage: Sie müssten eine benutzerdefinierte App/ein benutzerdefiniertes Bundle entwickeln, um sie so zu verwalten, wie WordPress es mit Plugins macht.Ich kann Ihnen nur die Idee geben und der Entwicklungsteil liegt ganz bei Ihnen.

Führen Sie eine Datenbanktabelle (Beispiel-Bundles) und verfügen Sie über ein benutzerdefiniertes Bundle oder eine Route/einen Controller, um das Hinzufügen/Entfernen von Bundles zu verwalten, einschließlich des Hochladens neuer Bundles als ZIP-Datei und des Extrahierens in den Bundles-Ordner, während die Bundle-Details in der DB-Tabelle registriert werden.Wann immer Sie das Plugin aktivieren möchten, machen Sie das Feld „Aktivieren“ auf „true“ und verfügen Sie über eine benutzerdefinierte Bundle-Startmethode in der Hauptdatei start.php des Anwendungsverzeichnisses, die eine Funktion sein kann, um alle Namen der aktivierten Bundles abzurufen und sie dort zu laden die Registrierung.Wenn Sie diesen Ansatz verwenden möchten, können Sie die Verwendung des Autobundles vermeiden, da dadurch tatsächlich alles im Bundle-Verzeichnis geladen wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top