guirou62 Posted November 8, 2019 Share Posted November 8, 2019 (edited) Bonjour, Je suis actuellement en train de développer un module pour Prestashop 1.7.6.1. J'ai besoin d'appeler une fonction PHP via l'ajax pour modifier l'ordre des éléments à la volée. Pour créer la partie admin (qui renverra juste un JSON), je me suis basé sur le tuto suivant : https://devdocs.prestashop.com/1.7/modules/concepts/controllers/admin-controllers/ J'ai donc mon controller : <?php // /modules/parallaxeffect/controller/AjaxParallaxController.php namespace ParallaxEffect\Controller; use PrestaShopBundle\Controller\Admin\FrameworkBundleAdminController; class AjaxParallaxController extends FrameworkBundleAdminController{ public function changeOrder(){ return Tools::jsonEncode(['coucou']); } } J'ai ensuite configuré le PSR-4 : // /modules/parallaxeffect/composer.json { "name": "moi/parallaxeffect", "description": "Affiche un carrousel avec des éléments sur la page d'accueil", "autoload": { "psr-4": { "ParallaxEffect\\Controller\\": "controller/" } }, "config": { "prepend-autoloader": false }, "type": "prestashop-module" } Quand je suis, via l'invite de commande, dans le dossier de mon module, je fais la commande composer dumpautoload J'ai le message suivant : Quote Generated autoload files containing 0 classes Si je fais la commande composer dumpautoload -o J'ai le message : Quote Generated optimized autoload files containing 1 classes Est-ce normal ? J'ai tout de même fini le tuto en créant le fichier de routes mais je n'ai pas de résultat probant ... # /modules/parallaxeffect/config/routes.yml changeOrder: path: parallaxeffect/changeorder methods: [GET] defaults: _controller: 'ParallaxEffect\Controller\AjaxParallaxController::changeOrder' Deuxième question : Comment je fais pour accèder à cette page via l'url ? Dans le tuto, ils mettent /admin-dev/modules/your-module/demo mais à quoi correspond /admin-dev/ ? Merci d'avance !!! Guillaume Edited November 8, 2019 by guirou62 (see edit history) Link to comment Share on other sites More sharing options...
guirou62 Posted November 8, 2019 Author Share Posted November 8, 2019 (edited) Finalement, j'ai réussi à trouver les réponses à mes questions : Est-ce normal ? La réponse est oui, il faut bien vérifier que le dossier vendor est bien créé Comment accéder au module ? L'url est : adminxxxxxx/index.php/modules/parallaxeffect/changeorder?_token=xxxxxxxxxx ça ne fonctionnait pas car je devais réinstaller le module pour qu'il prenne en compte la route Une nouvelle question se pose néanmoins : Comment je fais pour utiliser les classes que j'utilise habituellement (exemple : pour faire une connexion en BDD) depuis ce controller qui est un extension de FrameworkBundleAdminController (Qui n'a rien à voir avec un module) ? Merci d'avance pour vos réponses Guillaume Edited November 8, 2019 by guirou62 (see edit history) Link to comment Share on other sites More sharing options...
pedepot Posted January 26, 2020 Share Posted January 26, 2020 En plus du tuto de Prestashop, inspirer vous du module PS_linklist https://github.com/PrestaShop/ps_linklist . Si vous vous engagez sur cette voie, il faudra utiliser toutes les fonctionnalites a la Symfony comme Doctrine, les services, etc… Link to comment Share on other sites More sharing options...
guirou62 Posted January 27, 2020 Author Share Posted January 27, 2020 Merci @pedepot J'ai entre-temps pu me baser sur des modules déjà existants pour enfin venir à bout de la conception de mon module ^^ Et pas de soucis pour la structure Symfony, je me suis bien basé dessus pour le développement avec la connexion en BDD ... Encore merci 1 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