【问题标题】:How to remove a property from document - mongo / loopback如何从文档中删除属性 - mongo / loopback
【发布时间】:2017-03-08 01:49:22
【问题描述】:

我的一个模型上有一个旧属性,我想从集合中的所有文档中删除它。我已经尝试通过 /upsertWithWhere 使用 id 来更新:

  • 传入未定义的值会导致“http 错误 400 错误请求”
  • 传入 null 只是将属性设置为 null

我还想我可以做一个常规的 POST 并覆盖每个文档,但是这些特定的文档很大,我不想这样做。

有没有办法简单地打补丁?

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

【问题讨论】:

    标签: javascript mongodb loopback


    【解决方案1】:

    这个查询应该可以解决问题:

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

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

    进一步解释查询...

    1. “{}”匹配集合中的所有文档
    2. "{$unset: {"old_property": ""}" 删除指定的字段
    3. “{multi:true}”(更新的可选字段)允许您在设置为 true 时更新多个文档

    以此为参考:https://docs.mongodb.com/manual/reference/method/db.collection.update/#multi-parameter

    【讨论】:

    • 这似乎可以解决问题,但是我正在寻找一种使用环回的方法。
    猜你喜欢
    • 2019-05-27
    • 1970-01-01
    • 2022-11-27
    • 2020-09-07
    • 1970-01-01
    • 1970-01-01
    • 2021-09-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多