2017-11-15 2 views
0

für einen einzelnen Job Dispatching ich in der Regel eine von ihnen tun:Jobverkettung in Lumen 5.5: withChain() funktioniert nicht Wie kann ich es funktionieren lassen?

Queue::push(new ExampleJob); 

oder

dispatch(new ExampleJob); 

https://lumen.laravel.com/docs/5.5/queues

der Laravel Docs nach einem bestimmten Job-Kette, wo ein Job auf der abhängig Vorheriges geschieht wie folgt:

ExampleJob::withChain([ 
    new OptimizePodcast, 
    new ReleasePodcast 
])->dispatch(); 

https://laravel.com/docs/5.5/queues#job-chaining

Dies funktioniert jedoch nicht in Lumen (ähnliches Problem hier: How to dispatch a Job to a specific queue in Lumen 5.5).

Wie ketten ich Jobs in Lumen 5.5?

Antwort

1

Ich glaube nicht, dass wird die Dokumentation in Laravel 5.5 arbeiten gegeben, in ihrem Beispiel unter creating jobs unter der Warteschlangen Dokumentation Seite, es zeigt, dass es mehrere Züge in der Lage alle Features erfordert:

<?php 

namespace App\Jobs; 

use App\Podcast; 
use App\AudioProcessor; 
use Illuminate\Bus\Queueable; 
use Illuminate\Queue\SerializesModels; 
use Illuminate\Queue\InteractsWithQueue; 
use Illuminate\Contracts\Queue\ShouldQueue; 
use Illuminate\Foundation\Bus\Dispatchable; 

class ProcessPodcast implements ShouldQueue 
{ 
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; 

    protected $podcast; 

Am bemerkenswertesten ist diese:

use Illuminate\Foundation\Bus\Dispatchable; die scheint, eine Eigenschaft zu sein, die in der Lumen 5.5 Framework insgesamt fehlt.

Der Rest der Illuminate\... Merkmale scheinen enthalten zu sein.

+0

Gut analysiert. Wie sollten wir es am besten funktionieren lassen? – Blackbam

+0

In meinem Fall musste ich schnell umziehen, also entschied ich mich, stattdessen Laravel 5.5 zu verwenden, trotz des zusätzlichen Aufwands. Aber ich kann bestätigen, dass die Verkettung funktioniert, wie auf Laravel 5.5 angekündigt – racl101

Verwandte Themen