如何正确更新mongodb文档中的resetPasswordExpires
字段:
{
"_id" : ObjectId("000"),
"username" : "root",
"isActive" : "yes",
"email" : "email@gmail.com",
"roles" : {
"admin" : ObjectId("111")
},
"resetPasswordExpires" : ISODate("2015-06-19T18:04:40.014Z"),
"resetPasswordToken" : "token"
}
我试过了:
db.users.update(
{ item: "000" },
{
$set: { "roles.resetPasswordExpires": ISODate("2015-06-20T18:04:40.014Z")}
})
和
db.users.update(
{ item: "111" },
{
$set: { "roles.resetPasswordExpires": ISODate("2015-06-20T18:04:40.014Z")}
})
以及其他一些没有匹配的变体。
答案 0 :(得分:1)
查询需要在_id
上匹配(至少这是您尝试匹配的内容)。 resetPasswordExpires
的更新值不是roles
的属性。以下内容应该有效:
db.users.update(
{ _id: ObjectId("000") },
{$set: { "resetPasswordExpires": ISODate("2015-06-20T18:04:40.014Z")}
});