Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在mongodb中使用upsert选项从更新中获取ObjectID_Node.js_Mongodb - Fatal编程技术网

Node.js 如何在mongodb中使用upsert选项从更新中获取ObjectID

Node.js 如何在mongodb中使用upsert选项从更新中获取ObjectID,node.js,mongodb,Node.js,Mongodb,是否可以使用upsert选项从update方法获取最后一个自动生成的ObjectID? 类似于mysql中的LAST\u INSERT\u ID() 下面是示例代码: /** * MongoDB ver. 2.4.9 * MongoDB NodeJS Driver ver. 1.3.23 */ var MongoClient = require('mongodb').MongoClient; MongoClient.connect('mongodb://127.0.0.1:27017/l

是否可以使用
upsert
选项从
update
方法获取最后一个自动生成的
ObjectID
? 类似于mysql中的
LAST\u INSERT\u ID()

下面是示例代码:

/**
 * MongoDB ver. 2.4.9
 * MongoDB NodeJS Driver ver. 1.3.23
 */
var MongoClient = require('mongodb').MongoClient;

MongoClient.connect('mongodb://127.0.0.1:27017/learning', function(err, db) {
    var c = db.collection('testUpsert');
    c.insert({a: true}, function(err, result) {
        // Here I can reach `_id` field
        console.dir(result); // object with id
    });
    c.update({ _id: undefined }, {a: false}, {upsert: true, w: 1}, function(err, result) {
        // Any elegant way to fetch `_id` of new document here?
        console.dir(result); // 1
    });
});

findAndModify()不工作吗?是的!正是我需要的。谢谢,乔。下面的代码对我有用:
c.findAndModify({u id:undefined},[],{a:false},{upsert:true,new:true},函数(err,result){…}