Я получаю следующую ошибку на сайте Drupal 8.
Следующий модуль отсутствует в файловой системе
Похоже, что пользовательский модуль был установлен и удален без его удаления.
Как я могу исправить эту ошибку?
Я получаю следующую ошибку на сайте Drupal 8.
Следующий модуль отсутствует в файловой системе
Похоже, что пользовательский модуль был установлен и удален без его удаления.
Как я могу исправить эту ошибку?
Ответы:
Если у вас Drupal Console, то быстрый способ это исправить - создать модуль с тем же именем компьютера, а затем удалить его.
$ drupal generate:module
Затем введите имя машины в соответствующем запросе и примите значения по умолчанию для всего остального.
$ drush pm-uninstall
Затем вы можете удалить вновь созданный модуль из файловой системы и продолжить свой день.
(Примечание: вам может понадобиться сохранить этот сгенерированный модуль, иначе ошибка вернется. В этом случае, если вам нужно установить модуль contrib с тем же именем, удалите сгенерированный модуль после добавления модуля contrib. Затем очистите кеш. )
Предполагая, что вы удалили неважный пользовательский модуль, который не требует запуска какой-либо процедуры удаления, вы можете использовать следующую команду Drush.
Drupal 7
drush sql-query "DELETE from system where type = 'module' AND name = 'MYMODULE';"
Drupal 8
drush sql-query "DELETE FROM key_value WHERE collection='system.schema' AND name='MYMODULE';"
См. Как исправить «Предупреждения« Следующий модуль отсутствует в файловой системе ... » для получения дополнительной информации и альтернатив.
Теперь с модулем управления конфигурацией конфигурация модулей хранится в файле core.extension.yml.
Перейдите к редактированию файла и попробуйте найти отсутствующий модуль в файловой системе, затем удалите строку и импортируйте config ( drush cim
).
Если это не работает, но вы нашли модуль, создайте его снова (только папку и действительный файл .info.yml) и снова введите drush cim
команду. Это удалит модуль.
Я исправил это, используя drush и composer. Получите модуль с require, установите и удалите с помощью drush, затем удалите с помощью composer.
composer require drupal/missing_module
drush en missing_module
drush pmu missing_module
composer remove drupal/missing_module
! Шаг с, drush en
вероятно, не является обязательным