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