1

我正在制作一个无线电自动化应用程序,将其播放列表存储在 mongoDB 中。集合中的每个文档playlists如下所示:

{
  'name': 'My cool playlist',
  'items': [
    {'fileID': 'Cr4tT47K4EfJGQzfg'},
    {'fileID': 'Cr4tT49K4EfJGxffg'},
    {'fileID': 'Cr4tT49KH7EfJGQzfg'},
    {'fileID': '45otT49K4EfJGQzfg'},
    {'fileID': 'Dr4tT49K4EfJGQzfg'},
  ]
}

我正在尝试使用此查询在某个位置插入一个元素数组:

$push: {'items': { $each: insertArray, $position: insertPos}}

insertArray是要插入的元素数组。 insertPos是包含我希望插入数组的位置的变量。)

MongoDB给了我这个错误:MongoError: $each term takes only $slice (and optionally $sort) as complements

我正在使用来自 Meteor 0.9.2.2 的 mongoDB 版本 2.4.9。换句话说,我实际上是在查询模拟 mongoDB 的 minimongo。

4

1 回答 1

4

您的查询不适用于 MongoDB 2.4.9,因为该$position运算符是在 2.6 中添加的。

于 2014-09-26T20:51:49.170 回答