Swift mailer 在 queue:work 时更改了默认设置

Swift mailer changed setting with default when queue:work

提问人:Anton 提问时间:2/22/2023 最后编辑:NIKUNJ PATELAnton 更新时间:2/22/2023 访问量:34

问:

我在 Laravel 5.8 中有一个快速邮件,它会发送一封带有用户 SMTP 设置的电子邮件。 它手动运行良好,但是当我在队列中使用它时,邮件设置将恢复为默认设置。

代码是这样的

if ($own_stmp) {
    $transport = (new Swift_SmtpTransport($user->mail_host, $user->mail_port))
        ->setUsername($user->mail_username)
        ->setPassword($user->mail_password);
} else {
    $transport = (new Swift_SmtpTransport(\Config::get('mail.host'), \Config::get('mail.port')))
        ->setUsername(\Config::get('mail.username'))
        ->setPassword(\Config::get('mail.password'));
}

// Create the Mailer using your created Transport
$mailer = new Swift_Mailer($transport);
    
// Create a message
if ($own_stmp) {
    $message = (new Swift_Message($subject))
        ->setFrom([$user->mail_from_address => $agent->name])
        ->setTo([$lead->email => $lead->name])
        ->setReplyTo($agent->email)
        ->addPart($content, 'text/html');
} else {
    $message = (new Swift_Message($subject))
        ->setFrom([\Config::get('mail.from.address') => $agent->name])
        ->setTo([$lead->email => $lead->name])
        ->setReplyTo($agent->email)
        ->addPart($content, 'text/html');
}

// Send the message
$result = $mailer->send($message);

如您所见,它通过$own_smtp标志更改电子邮件设置。

这确实运行良好,但是当我将其与

php artisan queue:work

它跳过自定义用户设置并使用默认设置发送。

怎么了?如何解决这个问题?

Laravel-5 迅捷邮件

评论


答: 暂无答案