2016-09-13 1 views
2

Wenn ich mich umsehe, kann ich nicht viele Informationen darüber finden, wie das geht. Viele der gleichen Beispiele erklären nur die grundlegende Implementierung der Versandklasse, aber das ist es.Verwenden von Formularanforderungsdaten in Laravel 5.3 sendefähige Ansichten

ich eine Email von einem Kontakt-Formular schicke und haben eine Route für die Prüfung, dass meine Form Beiträge einzurichten:

Route::post('/sendmail', function() {  
    Mail::to("my email.com")->send(new MyTestMail()); 
}); 

ich dann meine verschickbaren Klasse, die ich bestanden haben eine Testvariable als Test String:

<?php 

namespace App\Mail; 

use Illuminate\Bus\Queueable; 
use Illuminate\Mail\Mailable; 
use Illuminate\Queue\SerializesModels; 
use Illuminate\Contracts\Queue\ShouldQueue; 

class MyTestMail extends Mailable 
{ 
    use Queueable, SerializesModels; 

    public $test; 

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

    /** 
    * Build the message. 
    * 
    * @return $this 
    */ 
    public function build() 
    { 
     return $this->view('emails.myTestMail'); 
    } 
} 

Was ich möchte, ist zu tun hat Zugriff auf meine Post Wert aus dem Kontakt aus und sie in der E-Mail-Ansicht verwenden.

Antwort

3

Sie können versuchen, die Daten, die Sie benötigen, an den Ersteller dieses Pakets zu übergeben.

public $postdata; 

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

Jetzt werden 'postdata' für Ihre Ansicht verfügbar sein.

Mail::to("my email.com")->send(new MyTestMail($request->all()))