![](/img/trans.png)
[英]Why can I update one field but not another in MongoDB? (MEAN Stack)
[英]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')
我的应用程序的目录结构基于此教程 :
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.