Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否关闭从mongoose中的嵌入文档自动创建索引路径?_Javascript_Node.js_Mongodb_Mongoose - Fatal编程技术网

Javascript 是否关闭从mongoose中的嵌入文档自动创建索引路径?

Javascript 是否关闭从mongoose中的嵌入文档自动创建索引路径?,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,似乎mongoose正在为嵌入文档自动生成索引 是否有关闭创建的自动索引的选项?例如,代码似乎从任何子文档中收集索引 我是否遗漏了什么,或者是否有办法禁用此功能并明确说明哪些子文档需要索引?我们需要这样做,因为我们达到了每个集合限制64个索引的限制,这是MongoDB强制执行的。在深入研究了源代码之后,我看不到添加选项的任何方法。我的解决办法是: schema.indexes = function () { return schema._indexes; }; Mongoose创建的唯

似乎mongoose正在为嵌入文档自动生成索引

是否有关闭创建的自动索引的选项?例如,代码似乎从任何子文档中收集索引


我是否遗漏了什么,或者是否有办法禁用此功能并明确说明哪些子文档需要索引?我们需要这样做,因为我们达到了每个集合限制64个索引的限制,这是MongoDB强制执行的。

在深入研究了源代码之后,我看不到添加选项的任何方法。我的解决办法是:

schema.indexes = function () {
    return schema._indexes;
};

Mongoose创建的唯一索引是基于您在模式中显式定义的索引选项的——没有什么是自动的。您是否可以更新问题以包含您看到此问题的架构?如果您在嵌入到其他架构中的架构上定义索引,它将自动在引用子文档路径的父集合上创建索引。现在,我有一个简单的解决方法,就是重写
schema.indexes()
,只返回
schema.\u indexes
,它可以像我预期的那样工作。