首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >$unset是空的。必须指定这样的字段:{$unset:{<field>:.}

$unset是空的。必须指定这样的字段:{$unset:{<field>:.}
EN

Stack Overflow用户
提问于 2015-06-02 23:21:04
回答 1查看 6.9K关注 0票数 11

mongodb版本3.0.1

猫鼬版本4.0.3

我想这么做:

代码语言:javascript
复制
groupsModel.updateQ({_id:group._id},{
    $unset:{"moderators":""},
    $set:{"admins":newAdmins}
})

我得到了一个来自MongoError的catch

'\'$unset\' is empty. You must specify a field like so: {$unset: {<field>: ...}}'

但它不是空的。

然而,moderators不在架构中,这就是我试图删除它的原因。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-03 01:05:38

我无法重现该错误消息,但正如您所看到的,Mongoose只更新模式中定义的字段。但是,可以通过包括strict: false选项来覆盖该默认行为:

代码语言:javascript
复制
groupsModel.update(
    {_id: group._id},
    {$unset: {"moderators": ""}, $set:{"admins": newAdmins}},
    {strict: false}
)
票数 34
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30608208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档