Laravel 5.3.26
我有一个非常基本的Mailable,我无法访问视图数据。
这就是我称之为Mailable的方式:
$lead = new \App\Lead;
$lead->email = $request->email;
//...other assignations here...
$lead->save();
\Mail::to($lead)->send(new \App\Mail\LeadSubscribed($lead));
这是可邮寄的:
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class LeadSubscribed extends Mailable
{
use Queueable, SerializesModels;
public $lead;
public function __construct(\App\Lead $lead)
{
$this->lead = $lead;
}
public function build()
{
return $this->view('emails.subscribed');
}
}
根据文档,$ lead变量应该在视图中可用,因为它是公共成员。
但我的观点是:
@extends('emails.layout')
{{ dd($lead) }}
失败:
ErrorException in 5dce710c76367c58a43c4cc55d425b0f31847f8d.php line 1:
Undefined variable: lead (View: MY_PATH\resources\views\emails\subscribed.blade.php)
我认为我尝试了一切,使用with()(即使它不应该被要求),显示所有变量,没有任何作用,视图永远不会看到任何变量。
我显然在做一些事情,但我无法弄清楚它是什么。