我一直在尝试找出已经通过MongoDB手动创建的索引(我已经通过mongobooster为两个字段创建了2D球体索引,并通过定义模式创建了一个)。现在如果我在mongodbooster中运行这个查询
db.collectionname.getIndexes();
它的结果是我的3个文件与名称。关键和索引,我已经使用。我想在mongoose中执行相同的操作,但找不到等效的查询。我尝试了这个
const indexes = OrderSchema.indexes();
console.log('index:', indexes);
但是它只给了我一个索引,我在schema中定义了_id,我还需要另外两个包含2d球体索引的字段,我怎么才能得到呢?我想在这里实现的是,如果二维球体索引已经创建,不要创建索引,否则创建一个索引,这就是我想在这里实现的。任何帮助是赞赏谢谢
2条答案
按热度按时间fnx2tebb1#
是的,你不能用一个模式来做。你需要先创建模型,然后你可以这样做:
8aqjt8rx2#
如果你没有访问mongoose模型,但mongoose连接已经创建,你需要从一个集合中获取索引,你可以通过这种方式访问: