我知道如何將資料傳遞給,view但是如何將資料傳遞給 a mailable?我也有點困惑將資料庫呼叫放在哪里DB::select,在controller或mailable?到目前為止,我已經嘗試過這個:
web.php:
Route::get('/test-email', 'App\Http\Controllers\TestMailController@test');
TestMailController.php:
<?php
namespace App\Http\Controllers;
use App\Mail\ContactMail;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Mail;
class TestMailController extends Controller
{
public function test()
{
return new ContactMail();
}
}
TestMail.php:
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Support\Facades\DB;
use phpDocumentor\Reflection\DocBlock\Tags\Var_;
class TestMail extends Mailable implements ShouldQueue
{
use Queueable, SerializesModels;
public $data;
public function __construct()
{
$this->data = DB::select('select * from db_name');
}
public function build()
{
return $this->markdown('emails.testmail')->with('data', $data);
}
}
uj5u.com熱心網友回復:
您需要使用$this:
public function build()
{
return $this->markdown('emails.testmail')->with('data', $this->data);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/345244.html
