为什么我不能通过mongoose获取文件?

时间:2017-02-19 11:24:24

标签: mongodb mongoose

我通过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);
});

测试输出:

[]

1 个答案:

答案 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