db.collection.update({id: id_}, {
$set:{
name: jp.name,
}
}, {
upsert:true
},function(err, result) {
res.json({data: result});
});
我返回result
以确定它是更新还是插入。我在客户端看nModified
。如果是更新,则nModified返回1,否则如果是插入,则返回0.添加到result
我想返回id
字段。
result.id = id_;
res.json({data: result});
但它没有用。 如何使用更新查询返回参数?
答案 0 :(得分:2)
您可以使用Underscore's extend
方法来实现此目标
var _ = require("underscore"), // npm install underscore to install
query = { "id": id_ };
db.collection.update(query,
{ "$set": { "name": jp.name } },
{ "upsert": true },
function(err, result) {
var r = _.extend(result.result, query);
res.json({data: r});
});