Mysql 将数据添加到两个表中
这是我的问题 我在nodejs中创建一个Api rest,在那里我管理我的数据库。我有3个表:下注、用户和用户下注(这一个链接与用户下注) 我的问题是当我用Sequelize来做这个的时候。在我的网页中,这是一个Angular2应用程序,我想创建一个新的赌注,因此当我填写公式集时,我会通过post方法将所有数据发送到服务器。问题从这里开始,因为我想在bets表中添加(这不是问题所在)并在bets用户中添加引用 例如: 用户A创建一个新的赌注,所以当他单击create时,他会发送一个包含赌注数据的post方法,该数据包含标题、成本和收益。在服务器端,查询运行良好,但我希望它是,当我在bet表中插入下注时,我希望在bet users中添加id_bet和id_user,因为我希望将添加下注的用户与他创建的下注链接起来 我不知道我是否解释得很好 这是我的代码: 这就是赌注模式Mysql 将数据添加到两个表中,mysql,node.js,sequelize.js,Mysql,Node.js,Sequelize.js,这是我的问题 我在nodejs中创建一个Api rest,在那里我管理我的数据库。我有3个表:下注、用户和用户下注(这一个链接与用户下注) 我的问题是当我用Sequelize来做这个的时候。在我的网页中,这是一个Angular2应用程序,我想创建一个新的赌注,因此当我填写公式集时,我会通过post方法将所有数据发送到服务器。问题从这里开始,因为我想在bets表中添加(这不是问题所在)并在bets用户中添加引用 例如: 用户A创建一个新的赌注,所以当他单击create时,他会发送一个包含赌注数据的
module.exports = (sequelize, Sequelize) => {
const Bet = sequelize.define('apuestas', {
id: {
type: Sequelize.INTEGER,
autoIncrement: true,
primaryKey: true
},
titulo: {
type: Sequelize.STRING
},
coste: Sequelize.INTEGER,
beneficio: Sequelize.INTEGER
}, {
updatedAt: false,
classMethods: {
associate: (models) => {
Bet.belongsTo(models['usuarios_apuestas'], {
foreignKey: 'id',
targetKey: 'id_apuesta'
});
}
},
freezeTableName: true
});
return Bet;
};
我有一个控制器:
createBet(req, res) {
return this.service.create(this.mapper.inputUpdate(req.body))
.then(this.mapper.outputGet.bind(this.mapper, req.body))
.then(res.json.bind(res)).catch(res.send.bind(res));
}
这是地图绘制程序:
inputUpdate(inputBet) {
return {
titulo: inputBet.titulo,
coste: inputBet.coste,
beneficio: inputBet.beneficio
};
}
以及服务:
create(model) {
return this.db.create(model);
}
所有这些方法在不同的文件中是分开的
总之,我想要的是,当我添加一个新的赌注时,我想在“赌注用户”中添加用户和保存其id的赌注之间的关系
bets user表有3列:id、id\u bet、id\u user
现在我可以找到所有的赌注,一个用户使用他的id\u用户参与
我不知道我是否需要进一步解释我的问题,或者你是否不明白
titulo = title
coste = cost
beneficio = earnings