因此,我有一个NodeJS项目,其中有一个创建用户的端点。我正在使用Mongoose创建用户模型以将其保存到MongoDB数据库。这是我的代码:
const User = require("../models/user");
const { validationResult } = require("express-validator");
exports.createUser = async (req, res, next) => {
const errors = validationResult(req);
if (!errors.isEmpty()) {
const error = new Error("Validación incorrecta");
error.statusCode = 422;
throw error;
}
const userName = req.body.userName;
const password = req.body.password;
const role = req.body.role;
//creandolo en la base de datos
const user = new User({
userName: userName,
password: password,
role: role
});
try {
await user.save(); //guardando en bd
res.status(201).json({
message: "Usuario creado con exito!",
user: user
});
} catch (err) {
if (!err.statusCode) {
err.statusCode = 500;
}
next(err);
}
};
我导入我的用户模型文件,并同时使用body-parser。我已经设置了一个带有发布请求的端点,并且我在Postman上测试了此代码,并且可以正常工作。 我是一个初学者,我刚刚在Udemy观看了NodeJS课程,并且正在遵循在那里看到的代码模式。我的问题是这样一个事实,我必须req.body解析每个字段(用户名,密码,角色),然后创建一个具有相同字段的新User,以便直接在数据库中创建它,并且出于可伸缩性的原因,我认为这将是一个问题,因为我计划将更多的模型添加到具有很多字段的数据库中。