我有以下模式定义:
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文档,它应该是工作。如果我漏掉了任何东西或者其他方法,有人能给我放点光吗?
注意:但我不喜欢使用本机驱动程序和命令删除所有索引。
发布于 2016-05-30 21:22:21
嗯,我不确定您是否可以在_id上禁用mongo shell上的自动索引,但是您确实可以从mongo shell中禁用它。但是,请记住,此设置适用于集合级别。
您将使用自定义选项创建集合。
db.createCollection('collection', {autoIndexId: false})但是,请记住,如果在_id上禁用自动索引,复制将无法工作。
https://stackoverflow.com/questions/37531658
复制相似问题