Laravel 5.5。队列推送
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel 5.5。队列推送相关的知识,希望对你有一定的参考价值。
我已将我的应用程序从Laravel 4.2升级到5.5,我遇到了队列问题。
public function saved(Model $review)
{
if (App::runningInConsole()) {
return;
}
$data = [
'review' => serialize($review),
'action' => self::ACTION_SAVE
];
Queue::push(new UpdateReviewSummaryQueue, $data);
}
当我在模型保存上运行它时,我收到一个错误,即UpdateReviewSummaryQueue
类不存在。我跑了composer dump-autoload
,命名空间似乎很好。我可能会研究其他任何问题吗?
我还补充道
use SerializesModels;
作为Laravel升级指南建议
答案
在laravel 5.5你现在dispatch
工作而不是push
。有关完整文档,请参阅https://laravel.com/docs/5.5/queues#dispatching-jobs。试试:
dispatch((new UpdateReviewSummaryQueue($data));
另一答案
问题实际上在这一行:
Queue::push(new UpdateReviewSummaryQueue, $data);
将其改为此使其工作:
Queue::push(UpdateReviewSummaryQueue::class, $data);
以上是关于Laravel 5.5。队列推送的主要内容,如果未能解决你的问题,请参考以下文章