2016-07-09 12 views
1

私は投稿&のコメントを作成しています。 「コメント」は、コメント情報を含む埋め込みドキュメント(オブジェクト配列)フィールドであり、一意の識別子として「_id」を使用する。これは、(私は余分のMongoDBライブラリでのNode.jsを使っていることに注意してください)コードです:$プッシュでMongoDB、埋め込みドキュメントで作成したばかりのObjectIdを取得する方法は?

db.update('posts', { 
    _id: new ObjectID(postId) 
}, { 
    $push: { 
     comments: { 
      _id: new ObjectID(), 
      author: comment.author, 
      email: comment.email, 
      text: comment.text 
     } 
    } 
}) ... 

見て、私は新しいのObjectIdを作成していることがわかります。うまくいきましたが、ちょうどクライアントにコメントを作成した_idを送り返したいので、クライアントがページの更新を行わずに消去または編集できるようにしてください。埋め込みドキュメントを作成した_idを取得するにはどうすればよいですか?

答えて

0

どのようにしてIDを作成するときには、変数にそれらの設定について:

var id1=new ObjectID(postId); 
var id2=new ObjectID(); 

db.update('posts', { _id: id1 }, 
{ $push: 
{ comments: { _id: id2, 
    author: comment.author, 
    email: comment.email, 
    text: comment.text } } }) ... 
+1

素晴らしいアイデアを!やってみます。ありがとう! – modernator

+0

ありがとう!それは完全に機能しています。 – modernator

+0

返信としてマークしてください。 –

関連する問題