2016-05-24 50 views
0

我使用水线我Sails.js的应用程序,用帆 - 蒙戈适配器。我试图从我的MongoDB中搜索到_id。这是我试过的:Sails.js水线帆 - 蒙戈findOne

Case.findOne({id: args.itemId}).exec(function(err, retObj) {...} 
Case.findOne({_id: args.itemId}).exec(function(err, retObj) {...} 
Case.findOne({_id: { 'contains': args.itemId} }).exec(function(err, retObj) {...} 
Case.findOne({_id: { 'like': '%' + args.itemId} }).exec(function(err, retObj) {...} 

并且没有一个返回对象。我发现,返回一个对象的唯一的事情是:

Case.findOne({_id: { '!': args.itemId} }).exec(function(err, retObj) {...} 

我在this StackOverlow answer找到。但是...那是not运营商。所以当它只在集合中有一条记录时工作,它不会返回正确的对象。我不确定为什么当集合中有一个对象开始时它甚至可以工作。

什么我需要做的就是通过与帆 - 蒙戈ID的对象?

回答

0

更多的挖掘和寻找后,Sails.js Attributes documentation有一个“对象ID”类型,有一次我设置,在我的Sails.js模型文件,查找完美。

我结束了与此查询:

Case.findOne({id: args.itemId}).exec(function(err, item) { ... } 

希望这会帮助别人!