20260228062926-booking_equipment.js 1006 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. 'use strict';
  2. /** @type {import('sequelize-cli').Migration} */
  3. module.exports = {
  4. async up (queryInterface, Sequelize) {
  5. await queryInterface.createTable('booking_equipment', {
  6. booking_id: {
  7. type: Sequelize.DataTypes.INTEGER,
  8. allowNull: false,
  9. primaryKey: true,
  10. references: {
  11. model: 'bookings',
  12. key: 'booking_id'
  13. },
  14. onDelete: 'CASCADE',
  15. onUpdate: 'CASCADE'
  16. },
  17. equipment_id: {
  18. type: Sequelize.DataTypes.INTEGER,
  19. allowNull: false,
  20. primaryKey: true,
  21. references: {
  22. model: 'equipment',
  23. key: 'equipment_id'
  24. },
  25. onDelete: 'RESTRICT',
  26. onUpdate: 'CASCADE'
  27. },
  28. quantity: {
  29. type: Sequelize.DataTypes.INTEGER,
  30. allowNull: true,
  31. defaultValue: 1,
  32. comment: 'Количество'
  33. }
  34. })
  35. },
  36. async down (queryInterface, Sequelize) {
  37. await queryInterface.dropTable('booking_equipment')
  38. }
  39. }