更新するコレクションをスコープ変数として渡そうとしました-サイコロはありません。db.getCollection
私はファイナライズ本体から呼び出そうとしました-サイコロはありません、私はこれを取得します:
db assertion failure, assertion: 'invoke failed: JS Error: TypeError: db has no properties nofile_b:18', assertionCode: 9004
私はそれdb
がファイナライズメソッド内で未定義であることを意味すると思います。それで、それは可能ですか?
編集
これが私のファイナライズ方法です:
function(key, value) {
function flatten(value, collector) {
var items = value;
if (!(value instanceof Array)) {
if (!value.items) {
collector.push(value);
return;
}
items = value.items;
}
for (var i = 0; i < items.length && collector.length < max_group_size; ++i) {
flatten(items[i], collector);
}
}
var collector = [];
flatten(value, collector);
return collector;
}
collector.push(value)
いくつかのコレクションへの挿入に置き換えたいと思います。