Bonjour,
Dans le cadre de mon travail, je suis en train de développer un générateur de crud pour Propel.
J'ai un contrôleur qui gère les actions de bases de mon crud. Il appartient à un bundle qui lui est est spécifique. Il contient des templates qui sont ceux utilisés par défaut. Chaque bundle ayant besoin d'un crud va étendre cette base et hériter de ses templates.
Mon contrôleur de base a besoin d'être configuré. Ainsi, dans chacun des crud qui hérite de lui, j'ai un attribut qui contient une configuration.
Une des fonctionnalités de mon contrôleur de base est la gestion de message flash associé à l'utilisateur courant. Dans ses template, je faisais ça :
{% render "MonBundleDeBase:MonControleurDeBase:flash" %}
Ça avait pour action de faire une sous requête vers flashAction dans MonControleurDeBaseController de MonBundleDeBase.
Mes bundle de crud ne font que de la configuration (définition du model à gérer, des formulaire à utilser, etc) et ma gestion des message flash traite la notion d'espace de nom (généré en fonction du model).
Ainsi, si je garde la notation suivante : {% render "MonBundleDeBase:MonControleurDeBase:flash" %}
Je n'ai plus accès à la configuration du Bundle courant qui pourrait être n'importe quoi : FooBundle/BarController, BooBundle/BiduleController, etc).
Je souhaite donc remplacer : {% render "MonBundleDeBase:MonControleurDeBase:flash" %}
pour que "MonBundleDeBase" soit le Bundle courant et "MonControleurDeBase" le contrôleur courant. Ainsi, dans chaque crud, lors de leur exécution, mon action "flashAction" pourra prendre en compte la configuration spécifique qui aura été faite.
Avez-vous une solution svp ?
Merci
Partager