使用队列时,如何在laravel邮件中传递变量?

时间:2017-09-28 16:56:25

标签: php laravel-5.4

我已经设置了我的系统,以便用户在成功注册时收到带有姓名的邮件,并且工作正常。但我注意到它需要比我想要的页面显示成功消息更长的时间,所以我决定使用laravel队列进行后台发送。不幸的是,成功添加了成员​​详细信息,但没有发送邮件,页面错误显示

  

未定义的属性:App \ Mail \ Received :: $ name

基本上以下代码失败

$name = $newMember->firstname;

Mail::to($newMember)->queue(new Received($name));

虽然这个工作正常但

$name = $newMember->firstname;

Mail::to($newMember)->send(new Received($name));

所以最大的问题是,当我使用队列时,为什么 $ name 属性未定义,但是当我使用send时它已定义?

1 个答案:

答案 0 :(得分:0)

我通过在protected $name类中添加App\Mail\Received属性来修复此问题。