在文档 – mongoDB中设置一个字段

我试图在mongoDB中的文档中设置字段,但是当我运行node app.js时出现以下错误

扔呃; //未处理“错误”事件

theres我的代码:

 app.get('/verify', function(req, res) { console.log(req.protocol + ":/" + req.get('host')); var collection = "usuarios"; collectionDriver.getCollection(collection, function(error, the_collection) { if (error) { res.send(400, error); } else the_collection.update("{_id:" + req.query.id + "}, {$set: {ativo:'T'}}"); }); }); 

编辑:

  app.get('/verify',function(req,res){ console.log(req.protocol+":/"+req.get('host')); var collection = "usuarios"; collectionDriver.getCollection(collection, function(error, the_collection) { if (error) { res.send(400, error);} else the_collection.update({ '_id': req.query.id, $set: { ativo: 'T' } }); // the_collection.update("{_id:'"+req.query.id+"'}, {$set: {ativo:'T'}}");} }); }); 

和错误

events.js:72 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE at errnoException (net.js:904:11) at Server._listen2 (net.js:1042:14) at listen (net.js:1064:10) at Server.listen (net.js:1138:5) at Object.<anonymous> (/home/ladessa/files/MelhoraCidade/server/app.js:206:24) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10)

根据mongoose的update文档 , update方法应该用至less两个参数来调用。 引用函数签名,

 Model.update(conditions, update, options, callback); 
  1. conditions – 一个有效的JavaScript对象来查找要更新的实际文档。

  2. update – 实际的更新对象,这决定了在文档中所做的实际更改。

注意如果您使用的是本地mongodb驱动程序,则update函数会接受类似的参数。 引用update文档,

 update(selector, document, options, callback) 

selector器更新操作的select器。

document更新文件。

所以,你的function必须像这样改变

 the_collection.update({ '_id': req.query.id }, { $set: { ativo: 'T' } });