luci1 Posted November 24, 2011 Share Posted November 24, 2011 Bonjour, Je souhaite à l'installation d'un module A qui nécessite qu'un autre module B soit préalablement installer, vérifier que le module B est installer, et si non l'installer. Voici comment je m'y prends : dans la fonction install() de mon module A : public function install() { if ( ! Module::isInstalled('nomModuleB') ) { ModuleB::install(); } ... } Le problème est que l'installation du module B semble se passer correctement, sauf que celui-ci n'apparait pas comme installé dans la liste des modules, et je ne comprends pas pourquoi, quelqu'un a-t-il une idée ? Link to comment Share on other sites More sharing options...
luci1 Posted November 25, 2011 Author Share Posted November 25, 2011 Personne ? Link to comment Share on other sites More sharing options...
olea Posted November 25, 2011 Share Posted November 25, 2011 Il m'est arrivé d'avoir ce genre de problématique. Je n'ai pas fait d'installation dans une installation (c'est sans doute possible, mais marginal comme séquence, donc source de problèmes) J'ai résolu le problème en faisant échouer l'install de A si B n'est pas installé et réciproquement, en faisant échouer la désinstall de B si A est toujours installé. A noter, en 1.5, il est prévu 2 évolutions (entre autre) sur l'API module qui permettront de mieux gérer ce genre de problématique : - dans un module, on pourra indiquer de quels autres modules il est dépendant. c'est presta qui gèrera ces problèmes de non install si le module dont il dépend n'est pas présent (j'espère qu'il gèrera aussi les désactivations) - la séquence d'install pourra retourner des libellés pour indiquer les erreurs plutôt que juste des true/false (pour permettre d'indiquer à l'utilisateur d'installer B avant d'installer A) 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