Laravel Mailer 队列与 Redis 显示错误"The script tried to execute a method or access a property of an incomp



这是一个完整的错误。

Illuminate\Mail\SendQueuedMailable::handle((:脚本尝试执行一个方法或访问一个不完整对象的属性。请确保在取消序列化((之前加载了要对其进行操作的对象被调用或提供一个自动加载器来加载中的类定义/var/www/html/vendor/laravel/framework/src/IIlluminate/Mail/SendQueuedMailable.php

我们使用的是Laravel 5.5。并执行以下代码

Mail::to($customer)->queue(new WelcomeMail($customer));

mailer是laravel附带的默认mailer,但我们正在将作业排队到redis。Customer是User对象。欢迎邮件是以下

use IlluminateBusQueueable;
use IlluminateContractsQueueShouldQueue;
use IlluminateMailMailable;
use IlluminateQueueSerializesModels;
class WelcomeMail extends Mailable implements ShouldQueue
{
use Queueable, SerializesModels;
public $user;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($user)
{
$this->user = $user;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->view('security::emails.welcome');
}
}

我发现了我的问题所在。在同一个Redis实例上有多个服务器(localhost、staging等(具有队列侦听器。

相关内容

最新更新