0
我正在尝试使用express和mongoose创建REST API。以下是用户模型的代码(user.server.model.js)。无法使用Mongoose中的模型创建文档
const mongoose = require('mongoose');
var userSchema = new mongoose.Schema({
name: {
first: { type: String, required: true },
last: { type: String, required: true }
},
loginId: { type: String, required: true, unique: true },
password: { type: String, required: true },
location: String,
meta: { age: Number, website: String },
isActive: Boolean,
createdOn: { type: Date, default: Date.now },
updatedOn: Date
});
var User = mongoose.model('User', userSchema);
exports.User = User;
我试图用快递路线这样的用户模型(routes.js)如下:
const express = require('express'),
User = require('../models/user.server.model'),
router = express.Router();
router.route('/users')
.post((req, res) => {
let user = new User({
name: req.body.name,
loginId: req.body.loginId,
password: req.body.password,
location: req.body.location,
meta: req.body.meta,
createdOn: req.body.createdOn,
updatedOn: req.body.updatedOn
});
user.save((err) => {
if (err) {
res.send(err);
}
else{
res.json({ message: 'User created' });
}
});
});
module.exports = router;
但是当我尝试在Chrome中使用我邮差的分机来测试这个API “M变得低于误差
TypeError: User is not a constructor
节点版本:6.0
任何人都可以请告知这里发生了什么问题。
',所以你应该在user.server.model.js中将'exports.User'改成'module.exports'。试试看。 – JohnnyHK
谢谢@JohnnyHK,这工作:)请在答案部分发表您的评论,以便我可以将其标记为答案。 – Dinu
@JohnnyHK我可以知道为什么出口。用户不在这里工作? – Dinu