从node.js中的mongo db获取最后插入的Id

时间:2016-12-16 04:13:16

标签: node.js mongodb

如何从mongodb获取node.js中的最后一个插入ID。

我的代码如下:

var insertDocument = function(db, callback) {
                        db.collection('feedback_replies').insertOne( {
                              "feedback_id" : req.body.id,
                              "reply_text" : req.body.reply,
                              "replied_by" : "admin",
                              "replied_at" : new Date()
                           }, function(err, result) {
                                console.log("Record added as "+result);
                                assert.equal(err, null);
                                callback();
                          });
                    };

   MongoClient.connect(url, function(err, db) {
                      assert.equal(null, err);
                      insertDocument(db, function() {
                          db.close();
                      });
                    });

我已经创建了我插入的集合feedback_replies。我想从集合中获取最后一个插入的id。

1 个答案:

答案 0 :(得分:2)

你可以在回调结果中得到_id:

var insertDocument = function(db, callback) {
                    db.collection('feedback_replies').insertOne( {
                          "feedback_id" : req.body.id,
                          "reply_text" : req.body.reply,
                          "replied_by" : "admin",
                          "replied_at" : new Date()
                       }, function(err, result) {
                           console.log("Record added as "+result.insertedId);
                            assert.equal(err, null);
                            callback();
                      });
                };

完整记录您插入的内容:

console.log("record inserted >>"+JSON.stringify(result.ops[0]));