Node.js 如何使用NodeJS MongoDB获取完整的索引信息,以便能够重新创建相同的索引
文档说,使用Collection.indexInformation({full:true})返回有关集合上索引的完整信息。然而,这只提供了部分信息 我需要完整的信息,这样我就可以在不同的集合上“复制”(重新创建)相同的索引Node.js 如何使用NodeJS MongoDB获取完整的索引信息,以便能够重新创建相同的索引,node.js,mongodb,indexing,Node.js,Mongodb,Indexing,文档说,使用Collection.indexInformation({full:true})返回有关集合上索引的完整信息。然而,这只提供了部分信息 我需要完整的信息,这样我就可以在不同的集合上“复制”(重新创建)相同的索引 我做错了什么?谢谢 响应不会分离索引的选项和键,而是将它们合并到一个对象中。为了能够重新创建相同的索引,您需要对其进行解析 export function parseIndexInformation(index) { const keys = index.key;
我做错了什么?谢谢 响应不会分离索引的
选项
和键
,而是将它们合并到一个对象中。为了能够重新创建相同的索引,您需要对其进行解析
export function parseIndexInformation(index) {
const keys = index.key;
const options = {};
delete index.v;
delete index.ns;
delete index.key;
for (let option in index) {
options[option] = index[option];
}
return {keys, options};
}
你说的部分信息是什么意思?它确实提供了关于所有索引的所有信息。我只得到以下信息:{key:Object name:“id”ns:“uns.professionals”v:2}但是我想获得关于创建索引时使用的选项的信息(唯一?名称?排序规则?)这样我就可以在不同的集合中重新创建同一个索引。不确定为什么,但我已经测试过,它可以获取与所有索引相关的所有详细信息。它确实提供了所有索引的详细信息,但没有提供这些索引的所有详细信息。换句话说,我无法根据返回的信息在不同的服务器上复制相同的索引。