我通过MongoDB Shell
获取文件:
db.page_about_love.find()
但我无法通过mongoose获取文件。有什么问题?
mongoose.connect(db_uri);
var loveSchema = new mongoose.Schema({
title: String,
content: String,
tag: String
});
mongoose.model('page_about_love', loveSchema);
var about = mongoose.model('page_about_love');
about.find(function (err, love) {
if (err) return console.error(err);
console.log(love);
});
测试输出:
[]
答案 0 :(得分:2)
为防止Mongoose生成要使用的集合名称,您应该明确并传递它应该使用的集合名称:
var loveSchema = new mongoose.Schema({
title: String,
content: String,
tag: String
}, { collection : 'page_about_love' });
否则,Mongoose会将utils.toCollectionName()
函数应用于模型名称以确定集合名称,在您的情况下将产生page_about_loves
(注意复数化)。
更多信息here。