Мой первый модуль под Drupal заработал

Самому не верится.

Там было много шаманства с регистром букв. Имя файла контроллера тоже важно. Сначала не работало, выдавало ошибку:

ReflectionException: Class «\Drupal\zohobooks\Controller\ZohoBooksController» does not exist in ReflectionMethod->__construct() (line 135 of /var/www/myfirm/data/www/zohobooks.myfirm.com/web/core/lib/Drupal/Core/Entity/EntityResolverManager.php).

Но я победил!

Код контроллера:

Код роутинга:

Описание модуля:

Файлы в папке модуля:

Файл в папке контроллера:

Тут важно, что имя файла класса должно соответствовать тому, как оно объявлено!