Node.js 使用sequelize POST方法在nodejs中插入新记录
我想使用sequelize express在数据库中插入新数据,无需查询。我很努力,但是我没有得到结果。。。如果我的代码是错误的,那么给我一个使用sequelize express在db中插入新记录的代码Node.js 使用sequelize POST方法在nodejs中插入新记录,node.js,post,methods,insert,sequelize.js,Node.js,Post,Methods,Insert,Sequelize.js,我想使用sequelize express在数据库中插入新数据,无需查询。我很努力,但是我没有得到结果。。。如果我的代码是错误的,那么给我一个使用sequelize express在db中插入新记录的代码 const Sequelize = require('sequelize'); var express = require('express'); var app = express(); var mysql = require('mysql'); //var request=require(
const Sequelize = require('sequelize');
var express = require('express');
var app = express();
var mysql = require('mysql');
//var request=require('request')
const sequelize = new Sequelize('ganeshdb', 'root', 'welcome123$', {
host: 'localhost',
port: 3306,
dialect: 'mysql'
});
var users = sequelize.define('users', {
id: {
primaryKey: true,
type: Sequelize.INTEGER,
},
name: Sequelize.STRING,
role: Sequelize.STRING,
email: Sequelize.STRING
});
app.post('/test', function (request, response) {
return users.create({
name: request.body.name,
role: request.body.role,
email: request.body.email
}).then(function (users) {
if (users) {
response.send(users);
} else {
response.status(400).send('Error in insert new record');
}
});
});
app.listen(3000, function () {
console.log('Express server is listening on port 3000');
});
你应该使用body pareser 示例使用主体解析器:
var express = require('express')
var bodyParser = require('body-parser')
var app = express()
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())
app.use(function (req, res) {
res.setHeader('Content-Type', 'text/plain')
res.write('you posted:\n')
res.end(JSON.stringify(req.body, null, 2))
})
例如:
const Sequelize = require('sequelize');
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.json({ limit: '100mb' }));
app.use(bodyParser.urlencoded({ extended: true, limit: '100mb', parameterLimit: 1000000 }));
const sequelize = new Sequelize('test_01', 'root', 'root', {
host: 'localhost',
port: 3306,
dialect: 'mysql'
});
const users = sequelize.define('users', {
id: {
primaryKey: true,
type: Sequelize.INTEGER,
},
name: Sequelize.STRING,
role: Sequelize.STRING,
email: Sequelize.STRING
});
app.post('/test', function (request, response) {
return users.create({
id: request.body.id,
name: request.body.name,
role: request.body.role,
email: request.body.email
}).then(function (users) {
if (users) {
response.send(users);
} else {
response.status(400).send('Error in insert new record');
}
});
});
app.listen(3001, function () {
console.log('Express server is listening on port 3000');
});
有什么错误吗?你能在create函数中添加一个
.catch((err)=>{console.log(err)})
块并发布我们的错误,如果它是logscan,请给我一个完整的代码,实际上我是nodejs的新手,我的回答对你有帮助吗?是的,先生,你能帮我一个忙吗。。我想通过像路由、模型、控制器这样的单独文件插入数据。。我在互联网上看到了更多的例子,但没有得到正确的输出。先生,请提供您的邮件id,我将使用我的projectuladzislau。vavilau@gmail.com