【发布时间】:2014-01-01 06:50:39
【问题描述】:
我正在尝试使用findOne() 查询MongoDB 中的文档,但它不起作用。我试图过滤的字段是“日期”,我不确定它是否是我在插入文档时不应该使用的特殊词。我有什么遗漏吗?
Mongo 文档:
{
"_id" : ObjectId("52c271a5d1344a7a326c0d48"),
"author" : "User",
"title" : "Fourth post",
"body" : "This is the fourth post",
"date" : "1000000"
}
节点:
var postSchema = mongoose.Schema({
author:String,
title:String,
body:String,
date:Number,
attachments:Array
}),
post = mongoose.model('post', postSchema);
exports.getPost = function(id, callback) {
console.log(id);
post.findOne({date:id}, function(err, item) {
console.log(item);
});
}
控制台:(查询http://localhost:8080/posts/1000000)
1000000
null
【问题讨论】:
-
做
console.log(typeof id)你会发现问题的。 -
你是如何传递你的id的?或者怎么调用函数?
-
err中是否有错误?
-
尝试使用 parseInt(id)
-
@BradM:就是这样。我投入了
{date:parseInt(id)},它就像一个魅力。谢谢!