Mam moduł z dodatkowymi plikami (.inc) zawierającymi funkcje, które muszę uruchomić za pośrednictwem Drush. Wiem, że można uruchomić drush eval
, ale kiedy próbuję to zrobić dla tych funkcji, pojawia się następujący błąd:
Błąd krytyczny PHP: Wywołanie niezdefiniowanej funkcji my_module_my_function () w /usr/share/php/drush/commands/core/core.drush.inc(1037): kod eval () w linii 1
To polecenie działa (funkcja znajduje się w pliku .module).
drush eval 'my_module_cron();'
To polecenie nie działa (funkcja znajduje się w pliku .inc).
drush eval 'my_module_my_function();'
Czy istnieje jakieś obejście oprócz przeniesienia funkcji w module?
Odpowiedzi:
Możesz dodać module_load_include () do swojego kodu ewaluacyjnego, tak jak zrobiłbyś to gdziekolwiek indziej.
Lubię to:
źródło
.install
plików, na przykład:drush eval "module_load_include('install', 'my_module', 'my_module); my_module_install();"
Division by zero core.drush.inc(1168) : eval()'d code:1
kiedy dzwonięmodule_load_include
.drush eval 'module_load_include('...