最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

sequelize使用已有的外键创建新记录

IT培训 admin 6浏览 0评论

sequelize使用已有的外键创建新记录

我想为现有用户创建一个新的登录记录。我的用户模型是这样的:

'use strict';
module.exports = (sequelize, DataTypes) => {
  const User = sequelize.define('User', {
    userId: {
      type: DataTypes.INTEGER,
      primaryKey: true,
    },
    firstName: DataTypes.STRING,
    lastName: DataTypes.STRING,
    email: DataTypes.STRING,
  }, {  });
  User.associate = function(models) {
    models.User.hasMany(models.Login, {
      foreignKey: 'userId',
      as: 'loginUserId'
    });
  };
  return User;
};
回答如下:

我建议在模型Login中添加字段ID,并将id更改为primary Key

'use strict';
module.exports = (sequelize, DataTypes) => {
  const Login = sequelize.define('Login', {
    id: {
      type: DataTypes.INTEGER,
      primaryKey: true,
      autoIncrement: true,
    },
    userId: DataTypes.INTEGER,
    ipAddress: DataTypes.STRING,
    isSuccessfullLogin: DataTypes.BOOLEAN,
  }, {});
  Login.associate = function(models) {
    Login.belongsTo(models.User, {
      foreignKey: 'userId',
      onDelete: 'CASCADE',
      as: 'loginUserId'
    });
  };
  return Login;
};

将记录插入表登录:

const loginRecord = await models.Login.create({
    ipAddress: "127.0.0.1,
    isSuccessfullLogin: true,
    userId: 2,
  })

sequelize使用已有的外键创建新记录

我想为现有用户创建一个新的登录记录。我的用户模型是这样的:

'use strict';
module.exports = (sequelize, DataTypes) => {
  const User = sequelize.define('User', {
    userId: {
      type: DataTypes.INTEGER,
      primaryKey: true,
    },
    firstName: DataTypes.STRING,
    lastName: DataTypes.STRING,
    email: DataTypes.STRING,
  }, {  });
  User.associate = function(models) {
    models.User.hasMany(models.Login, {
      foreignKey: 'userId',
      as: 'loginUserId'
    });
  };
  return User;
};
回答如下:

我建议在模型Login中添加字段ID,并将id更改为primary Key

'use strict';
module.exports = (sequelize, DataTypes) => {
  const Login = sequelize.define('Login', {
    id: {
      type: DataTypes.INTEGER,
      primaryKey: true,
      autoIncrement: true,
    },
    userId: DataTypes.INTEGER,
    ipAddress: DataTypes.STRING,
    isSuccessfullLogin: DataTypes.BOOLEAN,
  }, {});
  Login.associate = function(models) {
    Login.belongsTo(models.User, {
      foreignKey: 'userId',
      onDelete: 'CASCADE',
      as: 'loginUserId'
    });
  };
  return Login;
};

将记录插入表登录:

const loginRecord = await models.Login.create({
    ipAddress: "127.0.0.1,
    isSuccessfullLogin: true,
    userId: 2,
  })
发布评论

评论列表 (0)

  1. 暂无评论