【问题标题】:Mongoose plural collection definitionMongoose 复数集合定义
【发布时间】:2015-04-17 15:58:56
【问题描述】:

我正在尝试根据特定的id 创建不同的集合,我这样做的方式是:

db.save({...}, 'collection_' + id).then(function() {
    deferred.resolve();
});

这很好,我可以在我的数据库中看到新的集合。

但是,当我尝试加载这些数据时,它不起作用,因为 mongoose 强制它是复数的。

var Items = mongoose.model('collection_' + id, MySchema);
Items.count(function(err, count) {
    console.log(count); = 0
});

id 是完全动态的,并且会根据我提出的每个请求而变化,如何阻止 mongoose 在每个集合名称中添加“s”?

【问题讨论】:

    标签: node.js mongoose


    【解决方案1】:

    您可以为模型显式设置集合名称,如下所示:

    var collectionName = 'collection_' + id;
    var Items = mongoose.model(collectionName, MySchema, collectionName);
    //                         ^Change this if you want      ^This sets the collection name  
    

    查看answer 了解更多设置集合名称的方法。

    【讨论】:

    • 啊,我看到这个答案太晚了。这非常有效!
    猜你喜欢
    • 2021-07-10
    • 1970-01-01
    • 2015-04-30
    • 2012-08-30
    • 2015-03-22
    • 2016-03-27
    • 2018-09-15
    • 2011-11-21
    • 2014-08-25
    相关资源
    最近更新 更多