Aniket B
Aniket B

Reputation: 488

To get last inserted Id from mongo db in node.js

How to get last inserted id in node.js from mongodb.

My code is as follow:

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();
                      });
                    });

I have created collection feedback_replies in which I insert. I want to get last inserted id from collection.

Upvotes: 2

Views: 4751

Answers (1)

Sourbh Gupta
Sourbh Gupta

Reputation: 833

you can get the _id in the callback result as:

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();
                      });
                };

get full record what you have inserted as :

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

Upvotes: 3

Related Questions