Laravel - 从存储库分派一个不工作的工作

Laravel - Dispatching a job not working from a repository

当我尝试从它工作的控制器发送作业时。

然而,当我从存储库中执行相同操作时,出现错误。

<?php

namespace App\Repositories\Retailer;

use App\Jobs\SlackJob;
use App\Traits\CreateOrderTrait;

class CreateOrderRepo
{
   use CreateOrderTrait;

   public function create($store_id)
     {
        $slackJob = new SlackJob("Test", 1);
        $slackJob = $slackJob->onQueue('high');
        $this->dispatch($slackJob);
     }
}

错误:

Call to undefined method App\Repositories\Retailer\CreateOrderRepo::dispatch()

添加特征来调度作业:

use Illuminate\Foundation\Bus\DispatchesJobs;

改变这个

$this->dispatch($slackJob);

至此

dispatch($slackJob);