radiodad Posted March 6, 2013 Share Posted March 6, 2013 (edited) Bonjour à vous, Je suis nouveau dans Prestashop et me lance dans la création d'un nouveau module qui permet d'avoir des emails de managers pour chaque groupe de client. Nouveau dans Prestashop mais pas dans le développement Web, j'ai une bonne expérience en dév. Après avoir lu la doc, je me suis dit qu'un module qui permet d'overrider la classe AdminGroupsControllerCore réglerait mon problème. Mais je n'arrive pas à overrider ma classe AdminGroupsControllerCore. j'ai une fonction override renderForm qui se trouve dans monsite\override\controllers\admin\AdminGroupsController.php mais elle n'est pas prise en compte lors de l'execution. Est-il possible d'overrider les AdminXXXController.php ? Quand je remplace ma fonction renderForm dans monsite\controllers\admin\AdminGroupsController.php par celle qui est dans le réperoire override mon code fonctionne. Mais je souhaiterai utilisé cette option d'override pour pouvoir mettre à jour la boutique sans chaque fois patcher la classe AdminGroupsControllerCore. Est-ce possilbe d'overrider les AdminXXXController.php ? Est-ce qu'il y a une astuce qui m'échappe? Salutations Edited March 7, 2013 by radiodad (see edit history) Link to comment Share on other sites More sharing options...
SMorillon.com Posted March 6, 2013 Share Posted March 6, 2013 (edited) Bonjour, Normalement, l'override fonctionne sans problème. Attention toutefois au return parent::nom_fonction(); qui suivant le contenu des fonctions écrase le contenu de la fonction en cours et il faut donc dans certain cas utiliser return AdminController::nom_fonction(); pour ne pas appeler la fonction de la classe que l'on override mais la fonction de la classe du dessus. Edited March 6, 2013 by SMorillon.com (see edit history) 2 Link to comment Share on other sites More sharing options...
radiodad Posted March 7, 2013 Author Share Posted March 7, 2013 Merci SMorillon.com pour ta réponse. C'est bien AdminController::nom_fonction() qui fallait appeler. Bien à toi David Link to comment Share on other sites More sharing options...
martinjean Posted April 12, 2013 Share Posted April 12, 2013 Bonjour, J'ai un peu le même problème avec l'override du contrôleur /admin/AdminManufacturersController.php qui ne fonctionne pas. Je veux simplement ajouter un champ dans la fonction renderForm() et seule les modifications dans le contrôleur Core fonctionne. Merci d'avance Link to comment Share on other sites More sharing options...
Regaton Posted April 14, 2016 Share Posted April 14, 2016 Merci SMorillon.com !!! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now