首页 > 解决方案 > 用单个 DB 调用替换 mongoDB 文档的 *array* 中的子字符串

问题描述

我的 mongoDB 文档具有以下结构:

{
  _id: 'objectID',
  isFlexible: true, // || false
  date: 'date type string',
  availability: ['thursday.morning', 'thursday.afternoon', 'thursday.evening']
}

我希望能够选择一些文档isFlexible: true并将日期更改为今天的日期(这很容易),并将可用性数组更改为:

availability: ['friday.morning', 'friday.afternoon', 'friday.evening']

我知道如果我首先找到所有文档,在 nodeJS/expressJS API 中修改它们然后保存它们,我可以做到这一点,但我正在寻找一种解决方案,可以在一次调用 mongoDB 中完成。

任何帮助是极大的赞赏。

标签: javascriptnode.jsmongodbexpressmongoose

解决方案


您可以在 API 中构建新availability: ['friday.morning', 'friday.afternoon', 'friday.evening']的并将其发送以按原样保存在数据库中,而不是尝试在查询中更改它。


推荐阅读