mongoose总是返回一个空数组NodeJS

我已经尝试过使用find并且findOne都没有返回文档。find是在返回一个空数组findOne被返回nullerr在这两种情况下null也是如此。

这是我的联系:

function connectToDB(){

mongoose.connect("mongodb://localhost/test"); //i have also tried 127.0.0.1

db = mongoose.connection;

db.on("error", console.error.bind(console, "connection error:"));

db.once("open", function callback(){

console.log("CONNECTED");

});

};

这是我的架构:

var fileSchema = mongoose.Schema({

hash: String,

type: String,

extension: String,

size: String,

uploaded: {type:Date, default:(Date.now)},

expires: {type:Date, default:(Date.now()+oneDay)}

});

var Model = mongoose.model("Model", fileSchema);

我的查询在这里:

Model.find({},function(err, file) {

console.log(err)

console.log(file);

});

我可以将内容上传到数据库,并通过RockMongo进行查看,但之后无法获取它们。这是我第一次使用MongoDB,因此我认为我只是缺少一些基础知识。向正确方向的任何推动都是很棒的!

回答:

mongoose.model建立模型所绑定的集合的名称的调用,默认值为复数的小写模型名称。因此,使用您的代码将是'models'。要将模型与files集合一起使用,请将该行更改为:

var Model = mongoose.model("Model", fileSchema, "files");

要么

var Model = mongoose.model("file", fileSchema);

以上是 mongoose总是返回一个空数组NodeJS 的全部内容, 来源链接: utcz.com/qa/415751.html

回到顶部