我有一张桌子,可以容纳不同的人。现在,用户可以选择一组人员(例如Tom Dick和Harry)并将他们分组为新的“团队”。在后端,我需要更新Tom,Dick和Harry并在他们的team_field中添加一个团队ID。
例如:
{
name: "Tom",
age: 12,
team_id: id_for_team_1
}
但是由于在用户选择Tom,Dick和Harry并创建团队之前,team_1不存在,所以我还没有team1的ID。
我似乎首先需要这个:
{
_id: id_for_team_1
team_name: "Team Cool"
team_color: "blue"
}
我将如何在前端解决此问题?
我的想法:向后端请求在服务器上创建团队,从后端取回team_id,然后将ID添加到Tom,Dick和Harry,然后发送他们的更新配置文件到后端?
但是:这是我可以采用的最简单的方法,还是有更好的方法来解决此问题?看起来很复杂。 理想地,我只想更新前端中的所有内容,即创建一个团队对象+更新配置文件,然后一次性将其全部发送到服务器。但是我不知道该怎么办,因为我似乎依赖于mongodbs id,不能仅仅在前端组成自己的ID。
答案 0 :(得分:1)
如果您只想更新他们所属的团队,则可以在一个呼叫中发送一个用户ID列表,然后后端可以创建一个新团队并更新team_id。 伪代码:
1) POST /api/team
2) let userIds = req.body.userIds
3) newTeamId = Create a new team in Mongo and get its id
4) for(uid in userIds){
user = Mongo.find(id : uid);
user.teamId = newTeamId
Mongo.update(user)
}
如果您还希望能够更新用户信息,我将创建2种API方法,一种用于更新用户个人资料,另一种用于管理团队。