簡體   English   中英

laravel 中是否有急切的“插入”選項用於多對多附加?

[英]Is there an eager "inserting" option in laravel for ManyToMany attach?

在多對多關系中使用 Laravel 的附加 function 時,有沒有辦法將許多插入查詢減少到 1?

這是我的代碼:

$itemIds = Item::pluck('id');

$sale = Sale::create();

foreach ($itemIds as $id) {
    $sale->items()->attach($id);
}

但是這樣一來,它就可以進行與數據庫中找到的項目一樣多的查詢。

連接/分離

為方便起見,附加和分離也接受 ID 的 arrays 作為輸入。

例如:

$user = User::find(1);
 
$user->roles()->attach([1, 2, 3]);

在您的代碼中,您必須使用$itemIds作為項目 ID 的數組。

$itemIds = Item::pluck('id');

$sale = Sale::create();

$sale->items()->attach($itemIds);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM