批量插入雄辩模型阵列

时间:2016-02-29 14:49:47

标签: laravel eloquent

是否可以在一个查询中插入几个雄辩的模型?

假设我有一个雄辩的模型Page,我想在一个查询中插入页面数组或页面集合

$page1 = new Page();
$page2 = new Page();
$pages = [
  $page1,
  $page2,
];
or
$pages = Collection([$page1, $page2]);

我想要像

这样的东西
$pages->save();

但它警告说“方法保存不存在”。

我看到了this,但是他们插入了数组数组,我想插入一些雄辩的模型。

1 个答案:

答案 0 :(得分:0)

您可以尝试saveMany()选项。

此示例可能适合您:

DB::table('pages')->saveMany($pages);

如果您正在处理人际关系,您甚至可以使用“更清洁”的方式(只是向您展示使用此功能的方法示例):

$book = App\Book::find(1);

$book->pages()->saveMany([
    new App\Page(['title' => 'A new page.']),
    new App\Page(['title' => 'Another page.']),
]);