0
こんにちは私はそれに割り当てられた複数のユーザーを持つことができるテーブル(プロジェクト)があります。新しいプロジェクトを作成するとき、私は選択されたユーザーをユーザーのIDと作成されたproject_idを持つリンクテーブルに挿入する必要があります。現時点でLaravel複数のレコードを非配列変数に挿入する
$project = new Project;
$project->project_name = $request->project_name;
$project->expected_start_date = $request->expected_start_date;
$project->expected_end_date = $request->expected_end_date;
$project->project_desc = $request->project_desc;
$project->client_id = $request->client_id;
$project->save();
foreach($request->user_id as $user){
$link_project_user = new link_project_user;
$link_project_user->user_id = $user;
$link_project_user->project_id = $project->id;
$link_project_user->save();
}
は、私は、選択したユーザのをループし、それぞれの新しいユーザーを作成し、プロジェクトを作成し、$プロジェクト - >のidを経由してIDを取得しています。
しかしこれは、理論的にはデータベースに対して複数のクエリを実行するため、やや効率が悪いようです。上記インサートを実装する最も効果的で最適な方法は何でしょうか。
私はもともとユーザーの配列を渡そうとしていましたが、これはプロジェクトIDの配列を必要としました。
シンプルなエレガントなソリューションです、ありがとうございます!私はこれを考えていましたが、Laravelの機能が組み込まれている可能性があると思いました。 –