Установить адрес и имя в использовании почты - PullRequest
0 голосов
/ 05 ноября 2018

Я создал почтовый класс для отправки электронной почты в alravel 5.7, и у меня возникли проблемы с получением имени.

В config / mail.php есть конфиг:

'from' => [
    'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
    'name' => env('MAIL_FROM_NAME', 'Example'),
],

но я перезаписал в .env

MAIL_FROM_NAME=test@test.com
MAIL_FROM_NAME='test user'

При отправке писем с mailable, в методе сборки у меня есть:

return $this->from($this->from)
                    ->subject($this->emailSubject)
                    ->view('email_template')
                    ->with('data', $this->data);

Письмо отправлено, и в нем указано, кто: (test@test.com), но имя не доступно.

Почему ??

* ОБНОВЛЕНИЕ *

Я забыл очистить кеш:)

php artisan config:cache
php artisan config:clear

Теперь это работает. В методе from () нет необходимости, если вы перезаписали в .env

MAIL_FROM_NAME=
MAIL_FROM_NAME=

Ответы [ 2 ]

0 голосов
/ 05 ноября 2018

Вы не передаете второй аргумент в Mailable::from(), который дает имя.

Однако, если ваше приложение использует один и тот же адрес «от» для всех своих электронных писем, вызывать метод from в каждом создаваемом вами почтовом классе может быть затруднительно. Вместо этого вы можете указать глобальный адрес отправителя в файле конфигурации config/mail.php. Этот адрес будет использоваться, если в почтовом классе не указан другой адрес «от»:

'from' => ['address' => 'example@example.com', 'name' => 'App Name'],

https://laravel.com/docs/5.7/mail#generating-mailables

Другими словами, если вам не нужен адрес возврата для каждой среды, просто установите значение непосредственно в config/mail.php.

0 голосов
/ 05 ноября 2018

удалить метод from, если он отличается от того, что в env, или использовать

return $this->from(config('mail.from.address'), config('mail.from.name'))
                ->subject($this->emailSubject)
                ->view('email_template')
                ->with('data', $this->data);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...