Я настроил прослушиватель, добавив его в EventServiceProvider
protected $subscribe = [
MyListener::class
];
Слушатель (MyListener
) имеет функцию subscribe
, которая подписывается на события, которые слушатель хочет прослушивать, и она работает нормально.
Теперь я пытаюсь добавить проверку, чтобы ограничить, какие события следует прослушивать. Что-то типа
public function subscribe($events)
{
$config = ConfigService::getUserConfig();
if ($config->shouldSubscribe) {
$events->listen(.....);
}
}
Однако у меня возникли некоторые проблемы после добавления этой логики.
Кажется, что при запуске composer install
он выполняет метод подписки.
Это вызывает проблему, потому что при запуске composer install
нет активного сеанса - поэтому я встречаюсь с ошибкой SQL - он не может найти, в какой базе данных искать конфигурацию - за которой следует эта ошибка
Скрипт @php artisan package: узнайте об обработке события post-autoload-dump, возвращенного с кодом ошибки 1.
Как условно подписаться на определенные события в прослушивателе?