Bonjour,
Je créer un site pour afficher une collection de capsule. Il possède un dashboard back office.
Sur celui-ci je souhaite avoir un maximum de formulaire sans devoir changer de page.

Il y a donc le formulaire propre à la création de capsule.
Une capsule possède un producteur.

Je souhaite donc ajouter un formulaire de création de producteur à côté.

J'ai l'entité cap et son capController.
Le capController s'occupe de gérer l'enregistrement d'une capsule via la fonction create()
Cette fonction renvois à la vue "dashboard" le form de création.

J'ai également l'entité brewery (producteur) et son breweryController.
Le breweryController s'occupe aussi de gérer l'enregistrement d'un producteur via la fonction create()
Cette fonction renvois à la vue "dashboard" le form de création.

Evidement lorsque l'on pointe sur dashboard, cette vue ne peut pas être hydraté par deux controller...

En fait c'est un paradigme Symfony que j'ai du mal à saisir. A l'époque j'avais d'affreux controller qui appellait plusieurs entités pour hydrater mes vues tel que je le souhaitais.

Mais dans le cas actuel comment dois-je m'y prendre pour arriver à mes fins en étant correct dans mon organisation technique ?

Me faut-il un dashboardController qui extends les create() de mes entités ? Ou un dashboardController qui possèdent directement les createCap() et createBrewery() ?

Il semble que la pratique encouragée est un controller pour une entité mais face à ces limites je suis une fois de plus un peu perdu... Sortant de Express en nodeJs j'ai du mal à visualiser cette fragmentation.

Je préfère exposer le problème de cette manière plutôt que de balancer mes fichiers comme ça, mais si il vous en faut n'hésitez pas.

En espérant avoir était clair, je vous remercie pour vos aides.

1 réponse


Quand je suis face à ce genre de soucis, ce que je fait, c'est que je donne un name à mon bouton submit, et ensuite en PHP je fait un if form is submit sur Symfony et après je déroule mes controles et requetes.