【发布时间】:2016-04-14 20:50:53
【问题描述】:
您好,我有一个可以分配多个用户的表(项目)。创建新项目时,我需要将选定的用户插入到带有用户 ID 和创建的 project_id 的链接表中。
$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();
}
目前我正在创建项目并通过 $project->id 获取 id,然后遍历所选用户并为每个用户创建一个新用户。
但是,这似乎有点低效,因为理论上这会对数据库进行多次查询。实现上述插入的最有效和最佳方式是什么。
我最初尝试传入一组用户,但这需要一组项目 ID。
【问题讨论】:
标签: php mysql laravel orm eloquent