Laravel Nova-创建时将多行保存到数据库

时间:2018-12-30 17:19:39

标签: laravel eloquent laravel-nova

我正在将使用Backpack的Laravel应用程序转换为Laravel Nova。

我的一个模型Images允许用户使用初始表单中的基本信息集添加多个图像。在这种情况下,表单通过下拉菜单询问系列中有多少张图像,然后有许多相关字段将用于所有要添加的新图像。在控制器中保存时,我使用以下雄辩的功能来运行许多任务并插入所需的行数:

public function store(StoreRequest $request){
  //Get some info
  //Make some tweaks
  //Use for loop to save multiple records
  for ($k = 0; $k < $addim; $k++){
    //Do some stuff      
    parent::storeCrud(${"request"});
  }
}

这很完美,可以插入很多记录。

在Laravel Nova中,我看不到使用这种方法的方法。在模型中使用事件侦听器似乎不是保存多条记录的正确方法,而且我找不到用于实现此目的的控制器函数的任何引用。

我非常感谢您对完成此部分的最佳方法的一些想法和指导。

1 个答案:

答案 0 :(得分:0)

您可以在可见状态下使用保存事件

https://laravel.com/docs/5.8/eloquent#events