Laravel作业,缺少参数

Laravel作业,缺少参数,laravel,jobs,Laravel,Jobs,我试着在拉威尔派一份工作 工作: 零件控制器: public function storeImportedParts(Request $request, Project $project) { $milestones = $project->milestones->where('material_delivery', 1); $milestone_delivery_date = ''; if ($milestones

我试着在拉威尔派一份工作

工作:

零件控制器:

    public function storeImportedParts(Request $request, Project $project)
    {
        $milestones = $project->milestones->where('material_delivery', 1);

        $milestone_delivery_date = '';

        if ($milestones->count()) {
            $milestone_delivery_date = $milestones->first()->due_date;
        }

        $items = $request->items;

        $this->dispatch(new StoreImportedParts($items, $milestone_delivery_date, $project));
在这种情况下,会发生以下错误:

[2020-01-31 08:23:16] local.ERROR: Too few arguments to function App\Jobs\StoreImportedParts::__construct(), 0 passed in /xxx/xx/xxx/xxx/app/Jobs/StoreImportedParts.php on line 37 and exactly 3 expected
???
如果我用这样的数字更改变量,它会起作用:

        $this->dispatch(new StoreImportedParts(1, 1,1));
当然,有一个错误,但是参数到达作业中:

[2020-01-31 08:24:02] local.ERROR: Invalid argument supplied for foreach() {"userId":2,"exception":"[object]
在PHPStorm中,显示也不同:


为什么参数没有传递到作业中?

哪一个是Jobs/StoreImportedParts.php第37行?错误是说你传递了零个参数,所以错误不可能是这一行。我找到了它。对于我实现的测试,`$this->dispatch(newstoreimportedparts());`在零件控制器中。然后我把它复制到作业中,没有修改。很抱歉
[2020-01-31 08:24:02] local.ERROR: Invalid argument supplied for foreach() {"userId":2,"exception":"[object]