2016-05-21 19 views
0

Ich verwende den folgenden Code, um die Datensätze nacheinander einzufügen.Bulk Insert statt foreach loop: Laravel 5.2.31

foreach($data["SportsTypes"] as $SportsTypeID) { 
    $userSportsType = new \App\Models\User\UserSportsTypeModel(); 
    $userSportsType->UserID  = 1; 
    $userSportsType->SportsTypeID = $SportsTypeID; 
    $userSportsType->save(); 
} 

Kann ich Massen einfügen, um den Speichervorgang in Iteration loszuwerden?

Antwort

0

Es ist wirklich einfach, eine Masseneinfügung in Laravel mit Eloquent oder dem Query Builder zu tun.

Sie können den folgenden Ansatz verwenden.

$data = array(
    ['UserID' => '1', 'SportsTypeID' => $SportsTypeID], 
    ['UserID' => '2', 'SportsTypeID' => $SportsTypeID] 
); 

User::insert($data); // Eloquent 
DB::table('users')->insert($data); // Query Builder 

Hoffe, das wird helfen.