【发布时间】:2016-09-28 15:17:44
【问题描述】:
我有以下架构定义:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var EmpSchema = new Schema({
EmpName: {type: String},
EmpRefered : {type: [String]},
});
所以,现在_id 会自动生成并自动编入索引。由于某些架构的特定原因,我什至不希望在 _id 字段上建立索引。
为此,我尝试了以下代码:
options = {config:{autoIndex:false}};
var db2 = mongoose.createConnection('mongodb://localhost/DBName', options);
根据API docs,它应该可以工作。如果我遗漏任何东西或任何其他方式来做同样的事情,任何人都可以提出一些建议。
注意:但我不喜欢拉原生驱动程序和命令来删除所有索引。
【问题讨论】:
-
@joao,确实可以禁用
_id字段上的索引。见docs.mongodb.com/manual/reference/method/db.createCollection -
@Saleem autoIndexId 已被弃用,将根据您刚刚链接的文档页面在 3.4 版中删除。
-
@joao 是的,你是对的。