【问题标题】:MongoDB indexing in Node.jsNode.js 中的 MongoDB 索引
【发布时间】:2012-09-25 12:51:14
【问题描述】:

您好,我的应用程序中有以下代码,我必须在其中启用索引

var db = mongoose.createConnection(config.database.address, config.database.dbName);
var testSchema = new mongoose.Schema({
      status                  : String,
      loc                     : {lon: Number,  lat: Number },
      createDate              : {type: Date, default: Date.now}
});
exports.registerEmployee = function   (objEmployee , callback)
{
 var employee = db.model(objEmployee.categoryName, testSchema );
// Saves data     
}

如何为上述架构启用索引?由于集合名称(objEmployee.categoryName)是动态创建的,所以我有点卡在这里,因为对于不同的类别,将会创建一个新的集合。当我们创建新集合时,我们还必须启用索引。

如何做到这一点?

【问题讨论】:

  • 您需要的索引中有哪些字段?

标签: node.js mongodb mongoose


【解决方案1】:

集合名称是动态的这一事实不会影响您在loc 上创建索引的方式。您将索引声明为testSchemaloc 字段定义的一部分,Mongoose 将负责在您通过db.model 注册架构的每个集合上创建该索引。至于索引定义,可以在schema中指定权限:

      loc: {type: {lon: Number,  lat: Number}, index: '2d'},

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-12
    • 1970-01-01
    • 1970-01-01
    • 2013-07-09
    • 2012-09-19
    • 1970-01-01
    • 2019-01-22
    • 2016-10-28
    相关资源
    最近更新 更多