2017-04-09 75 views
0

出於某種原因,每當我跑Laravel 5.4 - 不能排隊郵件

Mail::to($user)->queue(new WelcomeEmail($user)) 

它立即發送排隊它代替。我已經遵循Driver Prerequsites

我試圖在artisan tinker上運行它,它仍然沒有添加到隊列中。

這是我WelcomeEmail類:

<?php 

namespace App\Mail\User; 

use Illuminate\Bus\Queueable; 
use Illuminate\Database\Eloquent\Model; 
use Illuminate\Mail\Mailable; 
use Illuminate\Queue\SerializesModels; 
use App\Modules\User\User; 

class WelcomeEmail extends Mailable 
{ 
    use Queueable, SerializesModels; 

    /** 
    * @var Model 
    */ 
    public $user; 

    /** 
    * Create a new message instance. 
    * @param User $user 
    */ 
    public function __construct(User $user) 
    { 
     $this->user = $user; 
    } 

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

是不是因爲我是在Windows機器上運行?

+0

你正在使用哪個隊列驅動程序? – dparoli

+0

@dparoli數據庫 –

+0

只要確保,但在你的'.env'文件中,隊列驅動程序設置爲什麼? –

回答

1

基於對這個問題的評論,麻煩的是,你有你的queue_driver設置爲SYNC.env文件。這個「驅動程序」會立即處理所有事情,這在開發時很有用。

如果你想使用數據庫驅動程序,你需要將它設置爲「database」,或者對redis驅動程序使用「redis」。