2017-12-18 242 views
0

我一直在试图找出已经通过MongoDB手动创建的索引(我已经通过mongobooster为两个字段创建了2d球形索引,并通过定义它来创建一个通过模式创建的索引)。现在,如果我在mongodbooster运行此查询如何从Mongoose中获取已定义的索引

db.collectionname.getIndexes(); 

它结果我的3个文件与name.key和我已使用的索引。我想在猫鼬中执行相同的操作,我找不到相同的查询。我想这

const indexes = OrderSchema.indexes(); 
console.log('index:', indexes); 

但它给我的只有一个我是_id架构定义索引我需要其他的两个字段,以及其中包含2D球指数我怎样才能得到的太多。这里试图实现的是,如果已经创建了二维球体索引,则不会创建索引,否则会创建一个所有正在尝试实现的索引。任何帮助表示感谢

+1

看到这个链接http://mongoosejs.com/docs/3.1.x/docs/api.html#collection_Collection-getIndexes – Sivabalan

回答

1

是的,你不能用模式来做到这一点。您需要首先创建模型,然后你就可以做这样的事情:

Order.collection.getIndexes({full: true}).then(indexes => { 
    console.log("indexes:", indexes); 
    // ... 
}).catch(console.error); 
相关问题