2017-06-29 10 views
-1
var upsertDocument = function (db, table,kv,data) { 
db.collection(table).update(
{ kv }, 
{ $set: data }, 
{ upsert: true } 
) 
} 

このようなコードはありますか?パラメータとして関数にkv(key、value)を渡す ありがとう。upsert時にパラメータのキー値を使用するには

私の入力はこのようです。ありがとう!

+0

どういう意味ですか?パラメータには何がありますか?どのドライバーを使用していますか?あなたはあなたの入力を示し、説明する必要があります。 –

+0

upsertDocument(db、 "MaxBlockSync"、{idx:0}、{blockNumber:66}); 私の入力はこのようです。 ありがとう! – cheer

+0

詳細については、[あなたの質問を編集](https://stackoverflow.com/posts/44819767/edit)をご覧ください。これにnodejsというタグも付いていますが、ベースドライバ、mongoose、またはmongskinなどのバリアントを使用しているかどうかは示しません。実際には、mongoシェルを使用しているだけです。私たちは知らない。試して、3つ以上の単語をまとめて、あなたが何をする必要があるか、そしてあなたが期待する結果を説明してください。質問ではなくコメントで。 –

答えて

0

基本的な考え方は正しいです。 mongooseを使用すると、次のようになります。

`var upsertDocument = function (table, kv, data) { 
    table.findOneAndUpdate(
     {_id: kv._id}, 
     { 
      $set: { 
       name: data.name 
      } 
     }, 
     {upsert: true} 
    ) 
}` 
関連する問題