我已将我的应用程序从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升级指南建议
答案 0 :(得分:0)
在laravel 5.5中,您现在dispatch
个工作而不是push
。有关完整文档,请参阅https://laravel.com/docs/5.5/queues#dispatching-jobs。
试试:
dispatch((new UpdateReviewSummaryQueue($data));
答案 1 :(得分:0)
问题实际上在这一行:
Queue::push(new UpdateReviewSummaryQueue, $data);
将其更改为已成功:
Queue::push(UpdateReviewSummaryQueue::class, $data);