Я знаю, вопрос очень странный ...
Сценарий: у меня есть класс Job, который отправляет электронное письмо, но содержимое этого электронного письма изменено, поскольку шаблон электронного письма выбирается перед отправкой.
Я не знаю, правда ли это, но, по-видимому, Laravel поддерживает кеш контента, который он запустил впервые. Даже изменив значение свойств, Job отправляет точно такое же электронное письмо.
Если это правда, я хотел бы знать, как использовать один и тот же класс работы для отправки разных писем или что было бы лучшей альтернативой.
\ app \ Jobs \ SenderEmail001.php
/**
* Create a new job instance.
*
* @return void
*/
public function __construct($template_id, $subject)
{
$this->template_id = $template_id;
$this->subject = $subject;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
$template = Template::findOrFail($this->template_id);
\Mail::send([], [], function($message) use ($template)
{
$message
->replyTo('[email protected]', 'Email Source')
->from('[email protected]', 'Email Source')
->to('[email protected]', 'Email Target')
->subject($this->subject)
->setBody($template->markup, 'text/html');
});
}
MyController
\App\Jobs\SenderEmail001::dispatch(6, 'subject subject subject')
->delay(now()->addSecond(100))
->onQueue('default');