Question

Si je ne me trompe pas, les bundles de Laravel devraient être similaires aux triades hiérarchiques MVC de Codeigniter.J'ai un projet construit en CI et je souhaite le migrer vers Laravel, j'essaie donc de faire correspondre certaines fonctionnalités.Dans CI, il suffisait d'installer l'extension HMVC, de créer une structure de dossiers appropriée et vous pouvez déjà accéder à vos contrôleurs nouvellement créés.Dans Laravel cependant, après avoir créé un bundle, vous devez l'enregistrer dans application/bundles.php en ajoutant

return array('newbundle'),

Existe-t-il un moyen pour moi d'enregistrer automatiquement tous les bundles (valides) qui existent dans le répertoire de mes bundles ?Comme dans, sans avoir à enregistrer explicitement chaque nouveau bundle.En d’autres termes, je souhaite rendre les bundles un peu plus dynamiques, afin de pouvoir simplement copier un bundle, le coller dans un autre projet et commencer à l’utiliser immédiatement.

En guise de question secondaire, quelqu'un a-t-il une idée de la « bonne » façon de réaliser avec les bundles de Laravel ce que Wordpress fait avec ses plugins :afficher une liste de tous les bundles installés dans le répertoire des bundles, mais activer (enregistrer) uniquement ceux sélectionnés ?

Était-ce utile?

La solution

Je ne comprends pas pourquoi personne ne vous a donné la vraie réponse.À présent, vous avez peut-être compris comment charger automatiquement les bundles en déplacement, sinon, veuillez jeter un œil au bundle suivant.

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

Pour répondre à votre deuxième question, vous devrez développer une application/un bundle personnalisé pour le gérer comme le fait WordPress avec les plugins.Je ne peux que vous donner une idée et la partie développement vous appartient entièrement.

Conservez une table de base de données (exemples de bundles) et disposez d'un bundle ou d'une route/contrôleur personnalisé pour gérer l'ajout/suppression de bundles, y compris le téléchargement de nouveaux bundles au format zip et leur extraction dans le dossier bundles tout en enregistrant les détails du bundle dans la table de base de données.chaque fois que vous souhaitez activer le plugin, définissez le champ d'activation sur true et disposez d'une méthode de démarrage de bundle personnalisée dans le start.php principal du répertoire d'application qui peut être une fonction pour récupérer tous les noms des bundles activés et les charger dans le registre.Si vous souhaitez utiliser cette approche, vous pouvez éviter d'utiliser l'autobundle car il chargera tout ce qui se trouve dans le répertoire du bundle.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top