Рейтинг:-2

Как перезагрузить (пользовательские) зависимости модулей

флаг in

В Drupal9, если модуль имеет зависимости, как в

мой_мастер_модуль.info.yml

зависимости:
  - зависимость1:зависимость1
  - зависимость2:зависимость2

вы не можете отключить/удалить любую из этих зависимостей с помощью пользовательского интерфейса - флажок для этого отключен.

Однако, если зависимости (настраиваемых) модулей были обновлены, зависимый модуль не включается автоматически. Вы также не можете включить его с помощью пользовательского интерфейса, потому что флажок отключен.

На самом деле, если вы используете drush для включения уже включенного модуля, он вроде бы пытается включить свои зависимости, но этого не происходит:

./drush pm:включить my_master_module
Будут включены следующие модули: dependency1, dependency2.

 Вы хотите продолжить? (да/нет) [да]:
 > да

 [успех] Успешно включено: зависимость1, зависимость2

Но тогда.. не стало.

Есть ли способ обновить/перезагрузить зависимости пользовательских модулей, чтобы Drupal включил все зависимые модули?

Рейтинг:1
флаг id

Использовать hook_update_N. Вот пример реализации из Metatag (файл метатег.установить):

/**
 * Включить новый модуль metatag_open_graph.
 */
функция metatag_update_8107() {
  \Drupal::service('module_installer')->install(['metatag_open_graph']);
  return (string) new TranslatableMarkup("Включен новый модуль Metatag: Open Graph.");
}

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.