索引是动态的数组上的Mongo $ inc

时间:2017-06-06 14:14:28

标签: json mongodb

我希望将分片值增加几个小时。

let doc = {
  $inc: {
    totalMessages: 1,
    'activity.' + (new Date()).getHours(): 1
  }
}

我的目标是每隔一小时计算一次。例如。在9到10点之间完成的消息量。

但字符串连接不起作用。 我怎么能这样做?

我也想利用$ inc upsert行为。 这样:

doc.$inc.activity[(new Date()).getHours()] = 1

既不起作用又导致以下MongoError:不能使用非数字参数递增 或者是TypeError:无法设置属性' xx'为null

THX

1 个答案:

答案 0 :(得分:0)

您可以将动态值放在括号内:doc.$inc['activity.' + value]
  这应该有用。