जैसा कि आप अपने प्रश्न में उल्लेख करते हैं, आप जो खोज रहे हैं, वह जॉब चेनिंग है।
लारवेल डॉक्स से
<ब्लॉकक्वॉट>जॉब चेनिंग आपको कतारबद्ध नौकरियों की एक सूची निर्दिष्ट करने की अनुमति देता है जिन्हें क्रम में चलाया जाना चाहिए। यदि अनुक्रम में एक कार्य विफल हो जाता है, तो शेष कार्य नहीं चलेंगे। एक कतारबद्ध कार्य श्रृंखला को निष्पादित करने के लिए, आप अपने किसी भी प्रेषण योग्य कार्य के लिए withChain पद्धति का उपयोग कर सकते हैं:
ProcessPodcast::withChain([
new OptimizePodcast,
new ReleasePodcast
])->dispatch();
तो ऊपर आपके उदाहरण में
$mailJobs = Subscriptions::all()
->map(function($subscription) {
return new SendMailJob($subscription);
});
Job::withChain($mailJobs)->dispatch()
अपेक्षित परिणाम देना चाहिए!
अपडेट करें
यदि आप श्रृंखला से प्रारंभिक नौकरी का उपयोग नहीं करना चाहते हैं (जैसे ऊपर दिए गए दस्तावेज़ीकरण उदाहरण में दिखाया गया है) तो आपको एक खाली Job
बनाने में सक्षम होना चाहिए वह वर्ग जिसमें use Dispatchable;
. फिर आप ऊपर दिए गए मेरे उदाहरण का उपयोग कर सकते हैं