由于经常会出现
Schema hasn’t been registered for model “User”
这样的问题,所以深入的寻找了一下原因,一点一点的向上查找,最后解决了。
首先是app.js里面在使用之前要定义,和初始化注册一次mongoose()
Schema hasn't been registered for model 解决方案。Schema hasn't been registered for model 解决方案。如图:
图片 1

因为下面的index和users就会开始引用models了,所以db的初始化和配置要在这之前解决。
Schema hasn't been registered for model 解决方案。config/mongoose.js
图片 2

图片 3

Schema hasn't been registered for model 解决方案。而models是这样子的

图片 4

将User导出
我们打印mongosoe的对象出来看一看,
出问题之前的mongoose是:图片 5

解决之后的mongoose是:图片 6

对比可以发现model被注册了。
以上是解决方案,记录让自己以后别走这个错误

相关文章