0
なぜgetcounter
関数は一度呼び出されるのですか?マルチオプション付き流星群コレクションが失敗する
collect.update({sys_RowId: {$exists : false}},
{$set: {sys_RowId: getcounter()}},{multi: true});
なぜgetcounter
関数は一度呼び出されるのですか?マルチオプション付き流星群コレクションが失敗する
collect.update({sys_RowId: {$exists : false}},
{$set: {sys_RowId: getcounter()}},{multi: true});
はい、あなたのgetcounter
関数が最初に評価されます。 collect.update
に渡されたJSONオブジェクトには戻り値のみが含まれています。 updateメソッドへのコールバックとしてgetcounter
を渡すことはできません。
あなたが代わりにforEach()
ループ内でこれを実行したいと思う:
collect.find(({sys_RowId: {$exists : false}}).forEach(function(doc){
collect.update(doc._id, {$set: {sys_RowId: getcounter()}});
});