プレイリストを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 にクエリを実行しています。