2017-02-24 105 views
0

我在我的模型中有一个旧属性,我想从集合中的所有文档中删除它。我已经通过/ upsertWithWhere使用id来更新试图通过发帖:如何从文档中删除属性 - mongo/loopback

  • 未定义通过为导致“HTTP错误400错误的请求”
  • 传入null刚刚设置的属性设置为null值

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

有没有办法简单地修补它?

编辑:需要通过Loopback API实现这个答案。

回答

0

这个查询应该做的伎俩:

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

显然,只要确保你插入“old_property”旧属性的字段名。

解释查询远一点......

  1. “{}” 相匹配的集合中的所有文件
  2. “{$取消设置:{” old_property “: ”“}” 删除字段( S)指定的
  3. “{多:真}”(用于更新的可选字段)允许设置为true时

以此为参考你更新多个文件:https://docs.mongodb.com/manual/reference/method/db.collection.update/#multi-parameter

+0

这似乎是它会做的伎俩,但我正在寻找一种方法来做到与回送。 – KMongiello