用express+MongoDB写接口的时候出现一个问题:
model.find({ openid: params.openid }, function (err, docs) {
if (!err) {
res.json({ data: docs, msg: '返回成功!', code: 200 })
}
})
不管传入的openid是什么值,接口永远都会返回该数据表中所有数据,即条件查询失效。 后来我尝试了传入该数据表的其他字段来进行条件查询,是能够返回特定结果的,经错误排查,发现是models文件中对应的model,使用new Schema时没有添加openid
var orderSchema = new Schema({
"publish_time": String,
"state": Number,
"price": Number,
"title": String,
"type": Number,
"publisher": String,
"picture": Array,
"name": String,
"note": String,
"task_time": String,
"openid": String
});
结论:model中的字段设置和数据表中的字段设置要一致,包括字段名和字段类型
|