【发布时间】:2019-05-22 12:54:33
【问题描述】:
我在schedule collection 中有一个特定用户 的 3 个项目,并且在每个记录(文档)中,我都有字段 isActive,user 将设置为当他想在那个项目上工作时为真,并且只能为一个项目设置。见以下记录:
{
"_id" : ObjectId("5c1e0a1cd8a20917b8564e49"),
"isActive" : true,
"projectId" : ObjectId("5c0a2a8897e71a0d28b910ac"),
"userId" : ObjectId("5c0a29e597e71a0d28b910aa"),
"hours" : 1,
},
{
"_id" : ObjectId("5c1e0a1cd8a20917b8564e4a"),
"isActive" : false,
"projectId" : ObjectId("5c188a9959f6cf1258f4cb01"),
"userId" : ObjectId("5c0a29e597e71a0d28b910aa"),
"hours" : 7,
},
{
"_id" : ObjectId("5c1e0a1cd8a20917b8564e4b"),
"isActive" : false,
"projectId" : ObjectId("5cyt2a7797e71a0d25b930ad"),
"userId" : ObjectId("5c0a29e597e71a0d28b910aa"),
"hours" : 1,
}
例如,用户已经为5c0a2a8897e71a0d28b910ac这个projectId完成了他的工作。现在他想为5c188a9959f6cf1258f4cb01 projectId 工作,所以我想编写更新查询以将5c188a9959f6cf1258f4cb01 projectId 的isActive 更新为true,将5c0a2a8897e71a0d28b910ac 和5cyt2a7797e71a0d25b930ad 项目的isActive 更新为false,表示用户其他项目。
【问题讨论】:
-
我实际上不明白。
particular projectId和user projects是什么意思 -
想要针对所有用户记录将特定项目的 isActive 键更新为 true。
-
@test 不清楚你在这里问什么
-
@AnthonyWinzlet,我在计划集合中有 3 条用户记录。每条记录都包含用户必须在哪个项目上工作以及工作了多少小时。现在完成一个项目的时间,用户想要打开另一个项目。所以我要问,我想从该记录中将特定 projectId 的 isActive 更新为 true,并将其余项目的 isActive 更新为 false。
-
@AnthonyWinzlet,如果您还不清楚,请再次询问我。
标签: mongodb