繁体   English   中英

在MEAN堆栈中,如何做一次MongoDB索引?

[英]In a MEAN stack, how can I do one-time MongoDB indexing?

我正在将Mongoose与Node.js和MongoDB一起使用。 我正在以Node.js的形式连接到Mongoose,

db = mongoose.connect('mongodb://localhost/my_database_name')

如何在node.js中配置一次以创建集合索引

我的应用程序的目录结构基于此教程

HTML        views/
Angular.js  public/javascript/
Express.js  routes/
Node.js     app.js
Mongoose js models/, set up in app.js
Mongo db    set up in app.js

指导我如何在Node.js的MongoDB集合上提供索引。

正如人们评论的那样,最好的方法是在Mongoose模式中设置索引。 就我而言,它在models / Animal.js文件中。

对于单索引,您可以定义何时定义架构

var animalSchema = new Schema({
  name: String,
  type: String,
  tags: { type: [String], index: true }
});

有关更多信息,请参阅文档

对于复合索引 ,您可以在Schema定义之后的同一文件中添加一行,如下所示:

animalSchema.index({"tags": 1, "name": 1});

排序顺序为升序(1)或降序(-1)。

顺便说一句,您可以使用db.animal.find().sort({tags: 1, name: 1}).limit(1)来获取第一个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM