D8 файл .module

Главные вкладки

Комментарии

Аватар пользователя marassa marassa 20 октября 2018 в 8:05

В .module и объявлять.

Olegars wrote:

* This file is no longer required in Drupal 8.

Это где он такое пишет и при каких обстоятельствах?

Аватар пользователя gun_dose gun_dose 20 октября 2018 в 9:39

Файл . module в восьмёрке действительно не обязателен. Он нужен только если вы хотите писать какие-то хуки. То есть алтеры пишем по-прежнему туда же.

Аватар пользователя Olegars Olegars 20 октября 2018 в 11:30

При создании заготовки через консоль

* @DCG
* This file is no longer required in Drupal 8.
* @see https://www.drupal.org/node/2217931

gun_dose wrote:

То есть алтеры пишем по-прежнему туда же.

Да уже понял, думал раз "no longer required" - больше не требуется, значит есть другой способ. И он действительно есть, через eventsubscriber но пока не для всех хуков, хотя в 9 будет для всех. Вроде так

Аватар пользователя gun_dose gun_dose 20 октября 2018 в 14:37

Ивенты и хуки выполняют одни и те же функции. Но в 99% случаев они не пересекаются. То есть, если есть ивент, то нет соответствующено хука. И наоборот. И в будущем планируется отказ от хуков в пользу ивентов.

Аватар пользователя gun_dose gun_dose 20 октября 2018 в 19:14

Списки хуков, как и раньше, можно найти в файлах .api.php, а ивенты в src/Events. Как отличить хук от ивента, странный вопрос. Как отличить собаку от телевизора? Тут тоже что-то в этом роде. По коду, хуки вызываются через \Drupal::moduleHandler()->alter(). А ивенты через $event->dispatch (). Приведённые фрагменты кода написаны по обрывкам из памяти, если что))