如何升级mongoose版本?

如何升级mongoose版本?

问题描述:我服务器上的mongodb是4.0版本的,那么我在网上找到了一个mongodb和mongoose版本兼容的表:

https://img1.sycdn.imooc.com//climg/622d5bca096fbafc08980326.jpg

从中得知,要安装5.2及以上版本的mongoose,但是egg-mongoose的node_modules下面的mongoose是5.17的,这样我在添加用户的时候就会报错,this.ownerDocument is not a function

https://img1.sycdn.imooc.com//climg/622d5c11092409b816860314.jpg

想请教一下老师,怎么解?

反复删除node_modules package-lock.json 重新 npm install 都没用

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好

我这里找到的兼容表:https://mongoosejs.com/docs/compatibility.html 比你的更新一点

MongoDB Server 4.0.x: mongoose ^5.2.0 or 6.x
MongoDB Server 4.2.x: mongoose ^5.7.0 or 6.x
MongoDB Server 4.4.x: mongoose ^5.10.0 or 6.x
MongoDB Server 5.x: mongoose ^6.0.0

egg-mongoose 依赖的版本

https://github.com/eggjs/egg-mongoose/blob/master/package.json#L18

"mongoose": "^5.10.9"

所以说 egg 中的这个版本应该是兼容你的 mongoDB 的版本的。


建议这样排查一下:

不用 egg-mongoose,就用我们之前自己引入 mongoose 的方式,来看一下到底是不是特点 mongoose 版本的问题。

  • wjk875 提问者 #1

    昨天在问答区找到了一个同学和我遇到了类似的问题,创建用户的时候报了ownerDocument is not a function,原因是因为mongoose版本的问题,我手动安装了一下就好啦,谢谢老师啦~

    2022-03-14 13:32:19
  • 张轩 回复 提问者 wjk875 #2

    同学能否提供问题链接? 我记录一下

    2022-03-14 14:50:28
  • 慕粉4305839 回复 张轩 #3

    我也遇到了这个问题,请问是如何解决的

    2022-05-02 22:33:34
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师