web-dev-qa-db-fra.com

Est-il possible d'appeler une fonction dans un fichier .inc d'un module via drush eval?

J'ai un module avec des fichiers supplémentaires (.inc) contenant des fonctions que je dois exécuter via Drush. Je sais qu'il est possible d'exécuter drush eval, mais lorsque j'essaie de le faire pour ces fonctions, j'obtiens l'erreur suivante:

Erreur fatale PHP: appel à la fonction non définie my_module_my_function () dans /usr/share/php/drush/commands/core/core.drush.inc(1037): eval () 'd code sur la ligne 1

Cette commande fonctionne (la fonction se trouve dans le fichier .module).

drush eval 'my_module_cron();'

Cette commande ne fonctionne pas (la fonction se trouve dans le fichier .inc).

drush eval 'my_module_my_function();'

Existe-t-il une solution de contournement, outre le déplacement de la fonction dans le module?

12
Michal Przybylowicz

Vous pouvez ajouter module_load_include () à votre code d'évaluation comme vous le feriez ailleurs.

Comme ça:

drush eval "module_load_include('inc', 'my_module', 'INCLUDE_FILE_NAME_WITHOUT_EXTENSION'); my_module_my_function();"
18
rooby