如何在Laravel Nova Action中使用接口存储库?

问题描述

我正在使用Laravel Repository Pattern来管理资源,我想知道如何在Nova Action中使用界面?由于无法实例化接口,所以我想知道如何在操作中使用接口?

在Controller构造函数中,我创建了存储库,然后可以在函数中使用它,但是我无法弄清楚如何在Laravel Action中执行相同的操作。

知道我该怎么做吗?

我的控制器中的一个例子

private $myRepository;

public function __construct(
    MyRepositoryInterface $myRepository,)
{
    $this->myRepository = $myRepository;
}

然后在函数中我可以做类似的事情

public function destroy($id)
{
    $this->myRepository->delete($id);

    return response()->json( array("message" => "success") );
}

现在,在我的新星行动中,这就是我想要做的

public function handle(ActionFields $fields,Collection $models)
{
    foreach ($models as $model)
    {
        $myRepository = new MyRepositoryInterface(); // This doesn't work obviously
        $myRepository->customManipulation($model->id);
        $this->markAsFinished($model);
    }
}

有什么想法可以使用我的存储库吗?

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)