使用Mongoose查询MongoDB中的日期字段

时间:2013-12-31 22:16:04

标签: node.js mongoose

我尝试使用MongoDBfindOne()中查询文档,但它无效。我试图过滤的字段是' date',我不确定它是否是我在插入文档时不应该使用的特殊字词。我有什么遗失的吗?

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

1 个答案:

答案 0 :(得分:0)

您的Mongo文档中的

{ "date" : "1000000" }似乎很可疑。由于它是一个数字,因此应为{ date : 1000000 }

这可能是类型不匹配。尝试使用post.findOne({date: "1000000"}, callback),如果可行,则会遇到输入问题。