2016-11-17 17 views
3

Laravel 5.3でビューを呼び出すMailableクラスを作成しました。しかし、コントローラからMailableクラスにいくつかの変数を渡し、View内でこれらの値を使用する必要があります。これは私のセットアップです:Laravel ControllerからMailableクラスにデータを送信する方法

コントローラー:

$mailData = array(
        'userId'  => $result['user_id'], 
        'action'  => $result['user_action'], 
        'object'  => $result['user_object'], 
       ); 
Mail::send(new Notification($mailData)); 

Mailable:

class Notification extends Mailable 
{ 
    use Queueable, SerializesModels; 

    protected $mailData; 

    /** 
    * Create a new message instance. 
    * 
    * @return void 
    */ 
    public function __construct($mailData) 
    { 
     $this->$mailData = $mailData; 
    } 

    /** 
    * Build the message. 
    * 
    * @return $this 
    */ 
    public function build() 
    { 
     // Array for Blade 
     $input = array(
          'action'  => $mailData['action'], 
          'object'  => $mailData['object'], 
        ); 

     return $this->view('emails.notification') 
        ->with([ 
         'inputs' => $this->input, 
         ]); 
    } 
} 

上記は私にエラーを与える:

を参照
ErrorException in Notification.php line 25: 
Array to string conversion 

constructラインin Mailableクラス:

$this->$mailData = $mailData; 

ここで何が間違っていますか?配列値をControllerからMailableに正しく渡し、withを使用してViewに渡すにはどうすればよいですか?

答えて

3

この試してみてください。それでもこの行の文字列conversion`にエラー `配列を取得

public $mailData; 

public function __construct($mailData) 
{ 
    $this->mailData = $mailData; 
} 

public function build() 
{ 
    // Array for Blade 
    $input = array(
         'action'  => $this->mailData['action'], 
         'object'  => $this->mailData['object'], 
       ); 

    return $this->view('emails.notification') 
       ->with([ 
        'inputs' => $input, 
        ]); 
} 

Docs

+0

:'ます$ this-> MAILDATA = $ MAILDATAを; ' – Neel

+2

こんにちはRIMON、私はそれを得ましたワーキング。私は自分のコードに誤字がありました。 '$ this-> mailData = $ mailData;'の代わりに、 '$ this-> $ mailData = $ mailData;'としました。第二に、「公然」の代わりに「保護された」ことは問題ではなかった。しかし、 '$ mailData ['xyz']'の代わりに '$ this-> mailData ['xyz']'への参照を更新する必要があります。ご協力ありがとうございました。非常に高く評価しました.. – Neel

+0

喜んで助けてください:) –

関連する問題