Node.js mongoose:按名称查找模型-从未调用回调

Node.js mongoose:按名称查找模型-从未调用回调,node.js,mongoose,callback,mongoose-schema,Node.js,Mongoose,Callback,Mongoose Schema,我用猫鼬来储存信息。我的问题是,我需要按名称查找以前注册的模型 我使用以下来源注册我的模型: global.dbConn1.model('UserModel', new mongoose.Schema({ name: String }, {versionKey: false})) 稍后,我将尝试通过名称访问我的模型并查询它: mongoose.model('UserModel').findById('<ID>', console.log /* CALLBACK */) mongo

我用猫鼬来储存信息。我的问题是,我需要按名称查找以前注册的模型

我使用以下来源注册我的模型:

global.dbConn1.model('UserModel', new mongoose.Schema({
name: String
}, {versionKey: false}))
稍后,我将尝试通过名称访问我的模型并查询它:

mongoose.model('UserModel').findById('<ID>', console.log /* CALLBACK */)
mongoose.model('UserModel').findById('',console.log/*CALLBACK*/)
问题是findById()永远不会返回。我没有得到任何输出,因此从未调用回调(console.log)。但是我没有得到任何错误,用户模型也是正确的


知道为什么从不调用回调吗?

您确定已连接到数据库吗?是的,我确定,因为其他一些模型使用相同的连接,并且这些模型可以工作。唯一的区别是我直接使用mongoose模型,而不是通过mongoose.model()。我认为使用
.model(…)
方法需要一个模式来work@GrégoryNEUT我认为它应该在没有模式的情况下工作,因为.model(…)被各种插件使用,也被标记为上的正确答案。我看到您使用了
dbConn1
,它们都使用相同的mongoose连接吗?如果将
UserModel
声明为
dbConn1
的一部分,则主
mongoose
实例将不知道它。这是我的猜测