Laravel - 使用一对多关系插入多个项目

Ash*_*nks 1 php laravel

是否可以通过一对多关系插入多个值,以便使用外键保存多个值.

例如:我有一个'贡献者'数组,用户可以选择添加到项目中 - 保存后我希望这些贡献者可以引用刚刚保存的项目.

尝试下面的代码(数组来自$ _POST ['contribrs']这是复选框) - 它保存数据,但不附加外键.我想避免使用循环,只是能够批量插入所有这些

$this->project->find($project->id)
      ->contributers()
       ->insert(Input::only('contributers')['contributers']);
Run Code Online (Sandbox Code Playgroud)

Ale*_*ski 9

您可以使用该createMany方法(链接到源)

$project = $this->project->find($project->id);
$project->contributers()->createMany(Input::get('contributers'));
Run Code Online (Sandbox Code Playgroud)

我还提出了一个小的重构:每行一个动作,Input::get()而不是使用Input:only(),这是为其他用例设计的.