当我们发送带有工作和队列错误的电子邮件时
when we send email with job and queue error occur
[发送电子邮件时显示这些错误][1]ReflectionException Method App\Mail\Newsletter::__invoke() does not exist
these is my controlledispatch(new Newsletter($emailSubject,$emailBody,$arrayEmails));
these is my email classpublic function build() { return $this->view('emails.newsletter')->subject($this->emailSubject)->with(['msg'=> $this->emailBody]); }
these is my jobs public function handle() { $email = new Newsletter($this->emailSubject,$this->emailBody,$this->arrayEmails); Mail::to($this->arrayEmails)->send($email); }
据我了解,您创建了一个作业,该作业又创建并发送了电子邮件对象。
但是,在控制器中,您不是在调度作业,而是在调度电子邮件对象。并且电子邮件对象不包含 handle
或 __invoke
方法,因此您会看到错误消息。
解决方案是发送作业而不是电子邮件。
这样的设计确实没有必要。请查看 Mailables,创建排队的可邮寄邮件,然后发送它。
[发送电子邮件时显示这些错误][1]ReflectionException Method App\Mail\Newsletter::__invoke() does not exist
these is my controlledispatch(new Newsletter($emailSubject,$emailBody,$arrayEmails));
these is my email classpublic function build() { return $this->view('emails.newsletter')->subject($this->emailSubject)->with(['msg'=> $this->emailBody]); }
these is my jobs public function handle() { $email = new Newsletter($this->emailSubject,$this->emailBody,$this->arrayEmails); Mail::to($this->arrayEmails)->send($email); }
据我了解,您创建了一个作业,该作业又创建并发送了电子邮件对象。
但是,在控制器中,您不是在调度作业,而是在调度电子邮件对象。并且电子邮件对象不包含 handle
或 __invoke
方法,因此您会看到错误消息。
解决方案是发送作业而不是电子邮件。
这样的设计确实没有必要。请查看 Mailables,创建排队的可邮寄邮件,然后发送它。