@Djonson86
Нечем похвастаться.

Как сделать так, чтоб выбирался провайдер для отправки почты в зависимости от ключа APP_ENV?

Добрый вечер. Сейчас в проекте отправляется в разных местах или настроенным smtp сервером через Mail::to('example@mail.com'), или в нужных местах через сендгрид Mail::mailer('sendgrid')->to('example@mail.com'). Для сендгрида конечно есть нужные ключи в env. Так вот, надо все перевести на сендгрид. Добавлять везде mailer('sendgrid')-> не совсем подходит, так как тогда не работает отправка на маилтрап при локальной разработке и тестировании, так как там надо чтоб было Mail::to. А отправлять реальные письма сендгридом при разработке как то нежелательно. Вот и собственно вопрос, как сделать так, чтоб через Mail::to при APP_ENV=production отправка шла сендгридом, но при local и develop настроенным smpt от mailtrap? Или может можно как то по другому это сделать?
Добавлять везде перед отправкой if и проверять APP_ENV нельзя.
  • Вопрос задан
  • 65 просмотров
Решения вопроса 1
pLavrenov
@pLavrenov
Разработка сайтов
Заменить в конфиге строку драйвера на условие с env()

А вообще в env файле указан драйвер почты, а на боевом сервере и локальном файлы .env отличаются и файл должен быть исключен из деплоя, измени на сервере значениена нужное.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Ну на вскидку можно сделать свой класс, который будет проверять env и уже от него выбирать через что слать письмо
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы