gpt4 book ai didi

javascript - 如何从 MongoDB 中的数组中提取对象

转载 作者:行者123 更新时间:2023-11-30 19:38:33 25 4
gpt4 key购买 nike

当接受或取消时,我有拉 friend 请求。因此,当我尝试从数组中提取它时,它不起作用。

它匹配 1 文档但修改了 0 文档。

当我从用户字段中删除 requested_at 字段时,它运行良好。

我哪里出错了?

MongoDB 文档

{
"_id" : ObjectId("5cb18680aa024b2d441f93cc"),
"friends" : [],
"friend_requests" : [
{
"user" : {
"id" : ObjectId("5cb14fd7db537905c89e0a72"),
"requested_at" : ISODate("2019-04-14T17:51:00.588Z")
}
}
]
}

MongoDB 查询

db.getCollection('users').updateOne(
{ _id: ObjectId("5cb18680aa024b2d441f93cc") },
{
$pull: {
friend_requests: {
user: {
id: ObjectId("5cb14fd7db537905c89e0a72")
}
}
}
});

结果

{
"acknowledged" : true,
"matchedCount" : 1.0,
"modifiedCount" : 0.0
}

最佳答案

使用点符号来指定条件:

db.users.updateOne(
{ _id: ObjectId("5cb18680aa024b2d441f93cc") },
{
$pull: {
"friend_requests": {
"user.id": ObjectId("5cb14fd7db537905c89e0a72")
}
}
});

关于javascript - 如何从 MongoDB 中的数组中提取对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55678528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com