Jump to content

[Résolu] Override via module


Recommended Posts

Bonjour,

 

J'ai lu sur la doc officielle de la 1.5 que les modules pouvaient comporter un dossier override.

 

Comment cela se passe-t-il par rapport aux autres fichiers dans le dossier base/override où l'on peut surcharger le core de prestashop ?

 

Le dossier override du module a-t-il le même effet que le dossier override à la racine ?

 

J'ai lu sur ce topic qu'il y avait un

merge des deux fichiers
. Cela signifie qu'au moment de l'install du module, tout le contenu du dossier override du module est fusionné avec le dossier override de base de prestashop ? Et dans un cas de conflit, l'override du module à la supériorité sur celui de base ?

 

Merci d'avance si vous avez des remarques sur le sujet ;)

Edited by Shimrra (see edit history)
Link to comment
Share on other sites

Alors, pour répondre à la question: l'override du module n'a nullement la priorité sur un override déjà existant (que cela soit écrit directement dans le fichier ou par le biais d'un module précédemment installé).

 

Si l'override d'une méthode est déjà existant, le module renvoie simplement une erreur d'installation de la surcharge.

Link to comment
Share on other sites

Bonjour,

 

Cela est nouveau en 1.5. Raphaël M avait développé des méthode dans la classe Module afin de gérer en auto (lors de l'installation/désinstallation d'un module) les overrides liés.

 

Cela marche impeccable pour la plupart des boutiques sans overrides. Pour celles en ayant déjà, ça se passe méthode par méthode, donc a tester !

Link to comment
Share on other sites

J'ai des doutes ... j'avais surchargé la classe Module via le dossier override. Par la suite, j'ai installé un module qui a réécrit dans ce fichier la méthode que j'ai redéfini et il n'y a pas eu d'erreur.

 

Je confirme l'erreur. Et en voici un exemple:

Le ou les modules suivants n'ont pas été correctement installés :

- nomdumodule:

Impossible d'installer la surcharge : La méthode nomDeLaMethode dans la classe NomClasse est déjà surchargé.

Link to comment
Share on other sites

Okey. Merci. J'ai pas eu ce message lors de l'installation. Comme dit Dev On Web, c'est surement en cours de mise en place et pas totalement opérationnel.

 

Sisi c'est opérationnel, j'ai jamais dis que ça ne l'était pas ! :huh:

J'ai moi-même un module distribué sur Addons utilisant le process pour les PS >= 1.5... et ça marche.

Link to comment
Share on other sites

Cela marche impeccable pour la plupart des boutiques sans overrides. Pour celles en ayant déjà, ça se passe méthode par méthode, donc a tester !

 

Tu ne voulais pas dire que certaines méthodes de classes c'était ok, et d'autre pas encore fait ? C'est automatique pour tous les fichiers d'override ? ou détaillé pour chacunes des méthodes dans les override ? (et du coup pas encore tous détaillés ?)

Link to comment
Share on other sites

Automatique pour tous. Mais je parlais du cas où la méthode est déjà overridée par l'utilisateur... dans ce cas spécifique (qui n'arrive pas souvent), je ne sais pas comment il se comporte, il faudrait analyser le code dans la classe Module pour savoir ;)

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...