Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将数据添加到两个表中_Mysql_Node.js_Sequelize.js - Fatal编程技术网

Mysql 将数据添加到两个表中

Mysql 将数据添加到两个表中,mysql,node.js,sequelize.js,Mysql,Node.js,Sequelize.js,这是我的问题 我在nodejs中创建一个Api rest,在那里我管理我的数据库。我有3个表:下注、用户和用户下注(这一个链接与用户下注) 我的问题是当我用Sequelize来做这个的时候。在我的网页中,这是一个Angular2应用程序,我想创建一个新的赌注,因此当我填写公式集时,我会通过post方法将所有数据发送到服务器。问题从这里开始,因为我想在bets表中添加(这不是问题所在)并在bets用户中添加引用 例如: 用户A创建一个新的赌注,所以当他单击create时,他会发送一个包含赌注数据的

这是我的问题

我在nodejs中创建一个Api rest,在那里我管理我的数据库。我有3个表:下注、用户和用户下注(这一个链接与用户下注)

我的问题是当我用Sequelize来做这个的时候。在我的网页中,这是一个Angular2应用程序,我想创建一个新的赌注,因此当我填写公式集时,我会通过post方法将所有数据发送到服务器。问题从这里开始,因为我想在bets表中添加(这不是问题所在)并在bets用户中添加引用

例如:

用户A创建一个新的赌注,所以当他单击create时,他会发送一个包含赌注数据的post方法,该数据包含标题、成本和收益。在服务器端,查询运行良好,但我希望它是,当我在bet表中插入下注时,我希望在bet users中添加id_bet和id_user,因为我希望将添加下注的用户与他创建的下注链接起来

我不知道我是否解释得很好

这是我的代码:

这就是赌注模式

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