express框架向数据库中插入数据
首先需要安装和连接数据库,可以使用mongoose模块来连接MongoDB数据库。
安装mongoose模块:
npm install mongoose --save
连接MongoDB数据库:
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/my_database', { useNewUrlParser: true });
接下来,可以定义一个数据模型来操作数据库。在models文件夹中创建一个user.js文件,定义一个用户数据模型:
const mongoose = require('mongoose');
const UserSchema = new mongoose.Schema({
name: {
type: String,
required: true
},
email: {
type: String,
required: true,
unique: true
},
password: {
type: String,
required: true
}
});
const User = mongoose.model('User', UserSchema);
module.exports = User;
以上代码定义了一个用户数据模型,包括了name、email和password三个字段,并且email字段是唯一的。最后导出User模型。
在路由中可以使用该数据模型来插入数据。例如,在routes文件夹中创建一个users.js文件,定义一个插入用户数据的路由:
const express = require('express');
const router = express.Router();
const User = require('../models/user');
router.post('/', function(req, res, next) {
const user = new User(req.body);
user.save(function(err) {
if (err) {
res.status(500).send('Error saving user to database');
} else {
res.status(200).send('User saved to database');
}
});
});
module.exports = router;
以上代码定义了一个POST请求路由,当请求到达该路由时,会将请求体中的数据保存到数据库中。首先创建一个User实例,传入请求体中的数据,然后调用save方法将数据保存到数据库中。如果保存成功,返回200响应码,否则返回500响应码。
最后,在app.js中加载该路由:
const usersRouter = require('./routes/users');
app.use('/users', usersRouter);
以上代码将/users路径的请求交由usersRouter路由处理。现在,当发送POST请求到/users路径时,数据将被保存到数据库中。
原文地址: http://www.cveoy.top/t/topic/bd7z 著作权归作者所有。请勿转载和采集!