如何将对象加载到 Laravel 5.5 Mailable 中?
How to load object into Laravel 5.5 Mailable?
我正在尝试为 Laravel 5.5 应用程序测试可邮寄 class,并且似乎遵循了所有指示 here。
我一直在尝试 preview my mailable in the browser,但由于某种原因,我传递给可邮寄 class 的对象没有正确传递,并且在可邮寄 [=] 中显示为 null 27=] 尽管我可以看到它存在于它之外。
这是我的 web.php
文件中用于在浏览器中测试可邮寄功能的函数:
Route::get('/testingMailable', function () {
$review = App\EvaluationReview::find(6);
return new App\Mail\StartReview($review);
});
对象正在按上面的方式填充,但是当我尝试在可邮寄的 class 中查看它时,它为空:
<?php
namespace App\Mail;
use App\EvaluationReview;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class StartReview extends Mailable
{
use Queueable, SerializesModels;
public $review;
public function __construct(EvaluationReview $review)
{
$this->$review = $review;
dd($this->review);//is null
}
public function build()
{
return $this->from('test@test.com')->view('startReview');
}
}
有谁知道为什么对象没有传递到可邮寄的 class?
您的代码有错别字。
变化:
$this->$review = $review;
收件人:
$this->review = $review;
我正在尝试为 Laravel 5.5 应用程序测试可邮寄 class,并且似乎遵循了所有指示 here。
我一直在尝试 preview my mailable in the browser,但由于某种原因,我传递给可邮寄 class 的对象没有正确传递,并且在可邮寄 [=] 中显示为 null 27=] 尽管我可以看到它存在于它之外。
这是我的 web.php
文件中用于在浏览器中测试可邮寄功能的函数:
Route::get('/testingMailable', function () {
$review = App\EvaluationReview::find(6);
return new App\Mail\StartReview($review);
});
对象正在按上面的方式填充,但是当我尝试在可邮寄的 class 中查看它时,它为空:
<?php
namespace App\Mail;
use App\EvaluationReview;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class StartReview extends Mailable
{
use Queueable, SerializesModels;
public $review;
public function __construct(EvaluationReview $review)
{
$this->$review = $review;
dd($this->review);//is null
}
public function build()
{
return $this->from('test@test.com')->view('startReview');
}
}
有谁知道为什么对象没有传递到可邮寄的 class?
您的代码有错别字。
变化:
$this->$review = $review;
收件人:
$this->review = $review;