Codeigniter 4 将插入的 ID 从第一个 table 保存到第二个 table
Codeigniter 4 saving inserted id from first table into second table
我正在尝试将我的数据保存到 2 table 秒。我有 2 tables,团队和成员。队长添加团队后(会保存在teamstable中),他的用户id和团队id(由teamstable生成)会保存在memberstable.
我的目的是,一旦用户创建了一个团队,他的用户 ID 将自动包含在成员中 table。
我面临的问题是团队 ID 被保存为 0。现在我只能考虑在执行插入团队 table 查询后获取 return 团队 ID ,然后使用 return 结果执行插入成员 table 查询。有更好的方法吗?如果是这样,我应该怎么做?如果不行,我也该怎么做?
下面是我当前的代码:
Table teams
team_id | game_id | leader_user_id
5 | 1 | 1
6 | 1 | 1
7 | 2 | 1
8 | 2 | 1
Table members
team_id | user_id
0 | 1
控制器
$model = new TeamsModel();
$newData = [
'game_id' => $this->request->getVar('game_id'),
'leader_user_id' => session()->get('user_id')
];
$members = new MembersModel();
$includeLeader = [
'user_id' => session()->get('user_id'),
'team_id' => $team_id
];
$model->save($newData);
$members->save($includeLeader);
提前谢谢大家!
设法找出如何使用 insertID() 解决它。以备不时之需
$model = new TeamsModel();
$newData = [
'game_id' => $this->request->getVar('game_id'),
'leader_user_id' => session()->get('user_id')
];
$model->save($newData);
$team_id = $model->insertID();
$members = new MembersModel();
$includeLeader = [
'user_id' => session()->get('user_id'),
'team_id' => $team_id
];
$members->save($includeLeader);
我正在尝试将我的数据保存到 2 table 秒。我有 2 tables,团队和成员。队长添加团队后(会保存在teamstable中),他的用户id和团队id(由teamstable生成)会保存在memberstable.
我的目的是,一旦用户创建了一个团队,他的用户 ID 将自动包含在成员中 table。
我面临的问题是团队 ID 被保存为 0。现在我只能考虑在执行插入团队 table 查询后获取 return 团队 ID ,然后使用 return 结果执行插入成员 table 查询。有更好的方法吗?如果是这样,我应该怎么做?如果不行,我也该怎么做?
下面是我当前的代码:
Table teams
team_id | game_id | leader_user_id
5 | 1 | 1
6 | 1 | 1
7 | 2 | 1
8 | 2 | 1
Table members
team_id | user_id
0 | 1
控制器
$model = new TeamsModel();
$newData = [
'game_id' => $this->request->getVar('game_id'),
'leader_user_id' => session()->get('user_id')
];
$members = new MembersModel();
$includeLeader = [
'user_id' => session()->get('user_id'),
'team_id' => $team_id
];
$model->save($newData);
$members->save($includeLeader);
提前谢谢大家!
设法找出如何使用 insertID() 解决它。以备不时之需
$model = new TeamsModel();
$newData = [
'game_id' => $this->request->getVar('game_id'),
'leader_user_id' => session()->get('user_id')
];
$model->save($newData);
$team_id = $model->insertID();
$members = new MembersModel();
$includeLeader = [
'user_id' => session()->get('user_id'),
'team_id' => $team_id
];
$members->save($includeLeader);