HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/good-life-be/models/TempFormData.js
import { DataTypes, Sequelize } from 'sequelize';
import sequelize from '../config/sequelize-config.js';

const TempFormData = sequelize.define(
  'temp_form_data',
  {
    id: {
      primaryKey: true,
      type: DataTypes.INTEGER,
      autoIncrement: true,
    },
    user_id: {
      type: DataTypes.UUID,
      allowNull: false,
    },
    category_id: {
      type: DataTypes.INTEGER,
      allowNull: false,
    },
    sub_category_id: {
      type: DataTypes.INTEGER,
      allowNull: true,
    },
    user_data: {
      type: DataTypes.JSON,
      allowNull: false,
    },
    createdAt: {
      type: DataTypes.DATE,
      allowNull: false,
      defaultValue: Sequelize.literal('CURRENT_TIMESTAMP'),
    },
    updatedAt: {
      type: DataTypes.DATE,
      allowNull: false,
      defaultValue: Sequelize.literal('CURRENT_TIMESTAMP'),
      onUpdate: Sequelize.literal('CURRENT_TIMESTAMP'),
    },
  },
  {
    timestamps: true,
  }
);

// Associations
TempFormData.associate = (models) => {
  TempFormData.belongsTo(models.user, { foreignKey: 'user_id' });
  TempFormData.belongsTo(models.category, { foreignKey: 'category_id' });
  TempFormData.belongsTo(models.sub_category, {
    foreignKey: 'sub_category_id',
  });
};

export default TempFormData;