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;