如果我的mongoose中有架构
'use strict';
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var lovSchema = new mongoose.Schema({
name : { type: String },
values : [{ type: String }]
});
module.exports = mongoose.model('lovs', lovSchema);
通常在mongoose中,我们使用reff查找文档,从_id
收集文件。
function getOneById(id){
var deferred = Q.defer();
model.findOne({ _id: id })
.exec(function (err, item) {
if(err) {
console.log(err);
deferred.reject(err);
}
else
console.log(item);
deferred.resolve(item);
});
return deferred.promise;
} // gentOneById method ends
但我想找到文档按名称,这是我的架构中的数据字段。
我尝试修改_id
{ {1}}但以此错误结束......
name
答案 0 :(得分:0)
只需使用带有String值的名称:
function getOneByName(name){
var deferred = Q.defer();
model.findOne({ name: name})
.exec(function (err, item) {
if(err) {
console.log(err);
deferred.reject(err);
}
else
console.log(item);
deferred.resolve(item);
});
return deferred.promise;
} // gentOneById method ends
你可以这样测试:
model.findOne({ name: "Bob"})
看看你是否还有错误......