【发布时间】:2021-05-02 17:53:22
【问题描述】:
我已经看到这个问题被问了几次,但没有人真正回答,或者他们的方法不起作用。我将粘贴到目前为止的内容,但我仍然收到找不到变量的错误。作业队列工作得很好,但在视图中找不到变量。代码下方是我查看过的其他无效资源。
错误消息-ErrorException:未定义变量:/Users/JandB/Desktop/myProject/storage/framework/views/dab250ddee8692f8f6a1fa3334aad4ba0eb81350.php:1 中的新需要
控制器
public function store(StoreNeedRequest $request)
{
$users = User::where('team_id', '=', auth()->user()->team_id)->get();
$newNeed = 4;
foreach ($users as $user) {
SendNeedsEmailJob::dispatch($newNeed, $user);
}
}
工作
class SendNeedsEmailJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $newNeed;
protected $user;
public function __construct($newNeed, $user)
{
$this->newNeed = $newNeed;
$this->user = $user;
}
public function handle()
{
Mail::to($this->user->email)
->send(new NeedsMail($this->newNeed));
}
}
邮件
class NeedsMail extends Mailable
{
use Queueable, SerializesModels;
public $newNeed;
public function __construct($newNeed)
{
$this->newNeed = $newNeed;
}
public function build()
{
return $this->markdown('emails.needs')->with('newNeed', $this->newNeed)->subject('New NEED');
}
}
查看
{{$newNeed}}
其他资源
https://laracasts.com/discuss/channels/laravel/laravel-job-not-passing-variable-to-end-viewhttps://medium.com/@petehouston/passing-data-to-blade-template-from-queue-in-laravel-79130c598f01Laravel queues issues when I pass data from controller to jobs
【问题讨论】:
-
你有什么错误吗?邮件视图中输出了什么?
-
laravel 版本是什么?
-
确保您的队列正在运行可能也是一个想法,我发现这有时是问题
-
@IGP - 邮件视图中不输出任何内容。我编辑并添加了错误消息,我正在使用 Laravel 7