Javascript Objective.js-根据“插入数据”;其中;条件
我想根据“where”条件将数据插入数据库,但未能成功 反对意见:Javascript Objective.js-根据“插入数据”;其中;条件,javascript,node.js,knex.js,objection.js,Javascript,Node.js,Knex.js,Objection.js,我想根据“where”条件将数据插入数据库,但未能成功 反对意见: const User = require('../../database/models/user'); router.route('/register') .get((req,res,next)=>{ res.render('user/register') }) .post((req,res,next)=>{ const {email, password} = req.body; const
const User = require('../../database/models/user');
router.route('/register')
.get((req,res,next)=>{
res.render('user/register')
})
.post((req,res,next)=>{
const {email, password} = req.body;
const user = User.query().where('email', '=', email);
if(user){
console.log('user exists');
// do something
}
if(!user){
console.log('user doesnt exist');
// do something
}
})
在任何情况下,它都会打印“用户存在”。我认为这是因为“用户”返回了一个承诺
我也试过:
const User = require('../../database/models/user');
router.route('/register')
.get((req,res,next)=>{
res.render('user/register')
})
.post((req,res,next)=>{
const {email, password} = req.body;
User.query().where('email', '=', email).then(row => {
if(row.length == 1){
console.log('user exists');
}
if(row.length == 0){
User.query().insert({
email : email,
password : password
})
}
});
})
但它不会将数据插入数据库。
我不知道如何根据条件将数据插入数据库。你知道我怎么修吗?
谢谢大家! 您丢失了。然后从insert查询中选择或等待 这应该起作用:
const User = require('../../database/models/user');
router.route('/register')
.get((req,res,next)=>{
res.render('user/register')
})
.post((req,res,next)=>{
const {email, password} = req.body;
User.query().where('email', '=', email).then(row => {
if(row.length == 1){
console.log('user exists');
}
if(row.length == 0){
User.query().insert({
email : email,
password : password
}).then(result => {
res.status(204).send();
})
}
});
})
您丢失了。然后从insert查询中删除或等待 这应该起作用:
const User = require('../../database/models/user');
router.route('/register')
.get((req,res,next)=>{
res.render('user/register')
})
.post((req,res,next)=>{
const {email, password} = req.body;
User.query().where('email', '=', email).then(row => {
if(row.length == 1){
console.log('user exists');
}
if(row.length == 0){
User.query().insert({
email : email,
password : password
}).then(result => {
res.status(204).send();
})
}
});
})
你在用Sequalize吗?你在用Sequalize吗?