我正在开发一个节点 js 休息服务器并且我的架构查询有问题。当我到达终点时,我得到错误 TypeError: user.find is not a function
以下是我的 user.js 文件
var {mongoose} = require('../../dbcore/mongoose');
var Schema = mongoose.Schema;
module.exports = mongoose.model('User',new Schema( {
basicId: Schema.ObjectId,
activePurchaseIDs: {
type: [Schema.ObjectId],
default: []
},
activeOrderIDs: {
type: [Schema.ObjectId],
default: []
},
paymentOptionIDs: {
type: [Schema.ObjectId],
default: []
},
addressIDs: {
type: [Schema.ObjectId],
default: []
},
interestIDs: {
type: [Schema.ObjectId],
default: []
}
}));
这是导入/需要它的地方。
var URLS = require('./urls');
var User = require('../schemas/user/user');
function init(app,mongoose) {
app.get(URLS.USERS_URL,(req,res)=>{
var user = new User({});
user.find().then((users)=>{
res.send({users});
},(err)=>{
res.status(400).send(err);
});
});
}
module.exports = init;
我在编写这段代码时遵循了一个教程,我希望它能在我一步一步地遵循教程的过程中工作。
原文由 Omer Ozer 发布,翻译遵循 CC BY-SA 4.0 许可协议
当您调用
var user = new User({})
时,您正在创建一个基于User
模型的新 MongoDB 文档并将其分配给var user
单个
user
文档没有find()
函数,但是你的User
模型有。