Szed Posted March 26, 2013 Share Posted March 26, 2013 Hello J'essaye de me mettre au développement de module, mais j'ai quelques questions. Je cherche à commencer simple : Apparition du module dans la liste des modules -> Ok. Installation / Activation / Création de table dans la BDD -> OK Ajout du bouton Configurer le module, lié à la fonction get_content() -> OK Affichage d'un formulaire avec plusieurs champs. -> Ok Enregistrement des valeurs dans la table -> Badum Tss Je me suis basé sur le module Canvas de PrestaEdit. Sauf que dans son exemple, il s'occupe du back office dans un nouveau onglet, et donc un nouveau contrôleur, prévu pour fonctionner avec un modèle. Donc : A partir du moment, ou il ne m'est pas nécessaire d'avoir une page dédié à mon module, et que tout peut se faire dans la page charger par "Configurer ce module". Dois-je a un moment créer un contrôleur qui étend ModuleAdminController ? Si non, comment procéder à l'insertion des données depuis mon get_content() ? Faut -il faire appelle malgré tout à un modèle ? Ou simplement se servir de fonction ? Et si oui, comment "charger" le modèle ? La doc est vraiment mal remplis, que ça soit en anglais ou en français :/ Si besoin je mettrais en ligne les modifs que j'ai faites depuis le module Canvas de PrestaEdit. Merci ! Link to comment Share on other sites More sharing options...
DevNet Posted March 26, 2013 Share Posted March 26, 2013 Bonsoir, Tout dépend de ce que tu souhaites faire avec ton module. La gestion sql peut se faire facilement grâce au fork en utilisant le modèle existant de l'admin. Si c'est une simple gestion ou plus complexe, et / ou qui n'a rien à voir avec le principe de table de données / listes, alors le modèle du fork admin t’embêtera plus qu'autre chose. A+ Link to comment Share on other sites More sharing options...
Szed Posted March 26, 2013 Author Share Posted March 26, 2013 En l’occurrence, quelque chose de très simple pour commencer. Des éditeurs libres tinymce, gérant le multilangue, et s'inscrivant dans mes tables en BDD. Et un affichage en front ensuite. Donc pas vraiment de table/list comme le modèle de PrestaEdit. Link to comment Share on other sites More sharing options...
DevNet Posted March 26, 2013 Share Posted March 26, 2013 Tu peux alors te diriger sur l'exemple du module "editorial" qui permet l'affichage de contenus enrichis dans le hook d'accueil. Link to comment Share on other sites More sharing options...
Szed Posted March 26, 2013 Author Share Posted March 26, 2013 Ok. Cependant, a l'heure de la 1.5 la "structure" des modules est disons différentes maintenant (via le passage au MVC). Est-ce une bonne chose de repartir sur un module encore "en 1.4", ou de toute façon, pour un module de cette simplicité autant rester sur la base du module Editorial ? J'ai deux-trois idées/besoin de module, mais c'est vrai qu'ils ne seront jamais très compliqué... Link to comment Share on other sites More sharing options...
J. Danse Posted March 26, 2013 Share Posted March 26, 2013 Je ne pense pas qu'il soit "bon" de se baser sur les modules 1.4 (ou devrais-je dire sur le style de module 1.4, étant donné que ceux de la version 1.5 ne soient pas encore mis au gout du jour). Il n'est par contre pas obligatoire d'utiliser un ModuleAdminController à part, mais il est possible d'utiliser un Model de son choix (il faudra réaliser un include de la classe correspondante dans le fichier du module) et lors du postProcess lié au module, il "suffit" simplement d'instancier ce modèle et de lui faire correspondre les bonnes données, par exemple. Je ne sais pas trop si j'ai été clair, sur le coup. Oui ? Link to comment Share on other sites More sharing options...
DevNet Posted March 26, 2013 Share Posted March 26, 2013 Vous avez tout ce qu'il vous faut ici : http://doc.prestashop.com/display/PS14/Modules%2C+Classes+and+Controller+Override Link to comment Share on other sites More sharing options...
Szed Posted March 26, 2013 Author Share Posted March 26, 2013 Merci, histoire de partir sur de bonne base, j'essayerais de rester sur du MVC tout de même. Je vais essayer de mettre en pratique l'idée de J. Danse. C'est ce que je cherchais à faire à la base. Par contre, Prestashop n'a pas de syntaxe pour charger un modèle ? Ca se fait via un include tout simplement ? Link to comment Share on other sites More sharing options...
DevNet Posted March 26, 2013 Share Posted March 26, 2013 Ca se fait via un include tout simplement ? Arf :/ si tu poses ce type de question, c'est qu'il te manque d'autres cordes à ton arc. Je te propose de te diriger d'abord : Apprends à créer un module simple de type "editorial" pour connaitre les limites de la classe Module Imprègne toi la doc pour comprendre l'usage du "context" de prestashop Oriente toi sur la mise en place d'un "controller" en front, en admin depuis un module (toujours dans la doc) Link to comment Share on other sites More sharing options...
J. Danse Posted March 26, 2013 Share Posted March 26, 2013 Il y a bien un autoload, mais pas pour les classes Models contenue dans un module, de fait. Ce n'est donc même pas un "simplement", finalement... ;-) Link to comment Share on other sites More sharing options...
Szed Posted March 26, 2013 Author Share Posted March 26, 2013 Apprends à créer un module simple de type "editorial" pour connaitre les limites de la classe Module Imprègne toi la doc pour comprendre l'usage du "context" de prestashop Oriente toi sur la mise en place d'un "controller" en front, en admin depuis un module (toujours dans la doc) D'acc. Le tuto de la doc (comment créer un module), est a jour sur la 1.5, et va jusqu’à l'implantation d'un controller en front. Par contre, il est super light sur la gestion de donnée en back. Il apprend tout juste a mettre a jour une valeur insérer dans ps_configuration... x) Le context, pour ce que j'en ai retiré de ma lecture, serais en rapport avec le multilangue/multiboutique (en gros : "ou on est"). La j'ai peut être tout faux par contre J'irais lire la doc sur ça. Pour le moment, je n'aurais pas besoin d'utiliser des controller en front. Ça ne serais que de l'affichage de donnée. Donc je vais plus me pencher sur le module editorial et essayer de faire les choses proprement. Tout faire dans l'editorial.php, je peux me débrouiller avec la doc, mais je suis moins au point sur le MVC. Merci ! Link to comment Share on other sites More sharing options...
DevNet Posted March 26, 2013 Share Posted March 26, 2013 (edited) Est-ce que ceci te donnera un complément ? http://www.prestaroc...prestashop-1-5/ J'ai aussi quelques éléments techniques qui peuvent être lus : http://blog.dev-net.fr/2013/01/utiliser-des-urls-rewrite-personnalisees-dans-vos-modules/#more-652 bonne lecture Edited March 26, 2013 by DevNet (see edit history) Link to comment Share on other sites More sharing options...
Szed Posted March 26, 2013 Author Share Posted March 26, 2013 Yep, j'étais tombé sur le tuto de prestaRocket. C'est une des rares sources qu'on trouve en cherchant. Je ne connaissais pas ton site par contre, je prendrais le temps de le visiter et de lire un peu 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