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

我有一个只读API,我希望Mongoose总是有 lean queries.

我可以在架构或连接级别启用此功能,认情况下为true吗?

解决方法

最简单的方法是使用补丁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方法(find,findOne,findById,findOneAndUpdate等).

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

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...