如何从文档中删除属性 - mongo / loopback

时间:2017-02-24 21:24:00

标签: javascript mongodb loopback

我的某个模型上有一个旧属性,我想将其从集合中的所有文档中删除。我试过通过/ upsertWithWhere发布使用id来更新:

  • 传入未定义的值,导致“http error 400 bad request”
  • 传入null,只将属性设置为null

我还以为我可以做一个普通的POST而只是覆盖每个文档,但是这些特定的文档很大,我宁愿不这样做。

有没有办法简单修补它?

编辑:需要一个通过Loopback API实现此目的的答案。

1 个答案:

答案 0 :(得分:0)

此查询应该可以解决问题:

db.collection('collection_name').update({},{$unset: {"old_property": ""}}, {multi:true})

显然,只需确保在“old_property”中插入旧属性的字段名称。

进一步解释查询...

  1. “{}”匹配集合中的所有文档
  2. “{$ unset:{”old_property“:”“}”删除指定的字段
  3. “{multi:true}”(可选的更新字段)允许您在设置为true时更新多个文档
  4. 将此作为参考:https://docs.mongodb.com/manual/reference/method/db.collection.update/#multi-parameter