You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

68 lines
1.6 KiB

'use strict';
/** @type {import('sequelize-cli').Migration} */
module.exports = {
async up (queryInterface, Sequelize) {
/**
* Add altering commands here.
*
* Example:
* await queryInterface.createTable('users', { id: Sequelize.INTEGER });
*/
const transaction = await queryInterface.sequelize.transaction();
try {
await queryInterface.addColumn(
'Users',
'tmRacerId',
{
allowNull: true,
type: Sequelize.NUMBER,
references: {
model: {
tableName: 'Racers',
},
key: 'id',
},
},
{ transaction }
);
await queryInterface.addColumn(
'Racers',
'userId',
{
allowNull: true,
type: Sequelize.STRING,
references: {
model: {
tableName: 'Users',
},
key: 'auth0id',
},
},
{ transaction }
);
await transaction.commit();
} catch (err) {
await transaction.rollback();
throw err;
}
},
async down (queryInterface, Sequelize) {
/**
* Add reverting commands here.
*
* Example:
* await queryInterface.dropTable('users');
*/
const transaction = await queryInterface.sequelize.transaction();
try {
await queryInterface.removeColumn('Users', 'tmRacerId', { transaction });
await queryInterface.removeColumn('Racers', 'userId', { transaction });
await transaction.commit();
} catch (err) {
await transaction.rollback();
throw err;
}
}
};