2015-09-20 2 views
0

Я пытаюсь установить напоминание через службу очереди laravel 5.1, задание выполняется и работает нормально, единственная проблема заключается в том, что он не задерживает работу, я не уверен, что i «Я делаю это правильно, может кто-нибудь сказать мне, что я делаю неправильно? мой SetReminder класс работа выглядит как тоlaravel 5.1 Задержка задания очереди не работает

namespace LM2\Jobs; 

use LM2\Jobs\Job; 
use Illuminate\Queue\SerializesModels; 
use Illuminate\Queue\InteractsWithQueue; 
use Illuminate\Contracts\Bus\SelfHandling; 
use Illuminate\Contracts\Queue\ShouldQueue; 
use LM2\Models\Lead; 
use LM2\Models\User; 

class SetReminder extends Job implements SelfHandling, ShouldQueue 
{ 
use InteractsWithQueue, SerializesModels; 

public $user; 
public $lead; 

public function __construct(User $user, Lead $lead) 
{ 
    $this->user = $user; 
    $this->lead = $lead; 
} 

/** 
* Execute the job. 
* 
* @return void 
*/ 
public function handle() 
{ 
    $user = new User(['client_id' => 1, 'name'=>'asdasd', 'password' => '123' , 'email' => microtime().'@gmail.com']); 
    $user->save(); 
} 
} 

и функция управления вызовом этой работы является:

public function setReminder($lead_id, Request $request) 
{ 
    $due_time = $request->input('due_time'); 
    $message = $request->input('message'); 
    $user = \Auth::user(); 
    $lead = Lead::where('_id',$lead_id)->first(); 
    $lead->reminders = ['message' => $message , 'due_time' => $due_time, 'user_id' => $user->id, 'active' => 1]; 
    $lead->save(); 
    $job = (new SetReminder(
      \Auth::user(), 
      Lead::find($lead_id) 
     ))->delay(10); 
    $this->dispatch($job); 
    return $lead; 
} 

перед вызовом функции я побежал php artisan queue:listen на терминале. спасибо большое всем :)

Новый пользователь, вставленный в функцию ручки, предназначен для тестирования.

+0

У кого-нибудь есть идея? :/ – benjah

+0

Для меня это говорит, задержка - это не метод. – rajangupta

ответ

1

Вероятно у вас есть файл env QUEUE_DRIVER=sync. Он не будет работать с ним.

Смежные вопросы