gpt4 book ai didi

node.js - Mongoose:有没有办法将 lean 默认设置为 true(始终打开)?

转载 作者:搜寻专家 更新时间:2023-10-31 22:18:00 27 4
gpt4 key购买 nike

我有一个只读 API,我希望 Mongoose 始终拥有 lean queries为了。

我能否在模式或连接级别启用此默认设置?

最佳答案

最简单的方法是猴子修补 mongoose.Query 类以添加默认精益选项:

var __setOptions = mongoose.Query.prototype.setOptions;

mongoose.Query.prototype.setOptions = function(options, overwrite) {
__setOptions.apply(this, arguments);
if (this.options.lean == null) this.options.lean = true;
return this;
};

Mongoose 为每个查询创建新的 mongoose.Query 实例,setOptions 调用是 mongoose.Query 构造的一部分。

通过修补 mongoose.Query 类,您将能够在全局范围内启用精益查询。所以你不需要路径所有 mongoose 方法(findfindOnefindByIdfindOneAndUpdate 等)。

Mongoose 使用 Query 类进行填充等内部调用。它将原始的 Query 选项传递给每个子查询,因此应该没有问题,但无论如何都要小心这个解决方案。

关于node.js - Mongoose:有没有办法将 lean 默认设置为 true(始终打开)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19183886/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com