MongoError:$每个术语只需$ slice(和可选的$ sort)作为补充

时间:2014-09-26 19:00:20

标签: mongodb meteor minimongo

我正在制作一个无线电自动化应用程序,将其播放列表存储在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。

1 个答案:

答案 0 :(得分:4)

您的查询无法使用MongoDB 2.4.9,因为在{2.6}中添加了$position运算符。