2016-03-24 22 views
1

queuesを使用してlaravel 5.1にメールを送信しようとしています。キューキュー可能エンティティApp LaravelでIDエラーが設定されていません

php artisan queue:listen 

を表示し、端末上のエラーの下、端末上でコマンドを聴い実行する場合は、jobsテーブルの

[Illuminate\Contracts\Queue\EntityNotFoundException] 
Queueable entity [App\Setting] not found for ID []. 

値は、プロセスではありません。何か案が ?

キューはどのように処理できますか?

答えて

1

私はこの質問が数ヶ月であることを知っていますが、この非常に同じエラーメッセージに遭遇している間私は私の観測を追加したいと思います。 EventListener(この例では非同期のためのShouldQueueのインタフェース)は、従属変数を正しく解決できないため(スコープ外またはEventListenerのhandle(Event $ event)メソッドで渡されたEventオブジェクトのスコープに含まれていないため) 。私はイベントリスナー内__constructブロック内で自分のコードを置くとき

は私にとっては、このエラーが解雇された。その代わり

public function __construct(Event $event) 
    { 
     $localProperty = $event->property 

     Mail::queue(etc...); 
    } 

    public function handle() 
    { 
     // Yeah I left this blank... whoops 
    } 

、イベントリスナーのハンドル()メソッドは、イベントインターフェイスを取り、プロセスと呼ばれるときキュー内のジョブ:イベントで

public function __construct(Object $ticket, AnotherObject $user) 
    { 
     $this->ticket = $ticket; 
     $this->user  = $user; 
    } 

とイベントリスナー

class SomeEventListener implements ShouldQueue 
    { 
     use InteractsWithQueue; 
     use SerializesModels; 

     public function __construct() 
     { 
      // Leave me blank! 
     } 

     public function handle(Event $event) 
     { 
      $someArray = [ 
       'ticket' = $event->ticket, 
       'user' = $event->user, 
      ]; 

      Mail::queue('some.view', $someArray, function($email) use ($someArray) { 
       // Do your code here 
      }); 
     } 

    } 

少し遅れていますが、これが誰かを助けてくれることを願っています。キューはイベントと似ています(ただし、ジョブがキューの主な原動力となることは例外です)。そのほとんどが関連している必要があります。

1

削除されたキューにモデルが追加されたためです。

関連する問題