Fix circular dependency: Remove explicit foreign key references and let Sequelize handle relationships
This commit is contained in:
parent
f76bab9646
commit
ec8831db5d
6 changed files with 16 additions and 36 deletions
|
|
@ -19,6 +19,10 @@ const sequelize = new Sequelize(
|
|||
define: {
|
||||
timestamps: true,
|
||||
underscored: false
|
||||
},
|
||||
sync: {
|
||||
force: false,
|
||||
alter: false
|
||||
}
|
||||
}
|
||||
);
|
||||
|
|
|
|||
|
|
@ -9,19 +9,11 @@ const Assignment = sequelize.define('Assignment', {
|
|||
},
|
||||
trainerId: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'Users',
|
||||
key: 'id'
|
||||
}
|
||||
allowNull: false
|
||||
},
|
||||
courseId: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'Courses',
|
||||
key: 'id'
|
||||
}
|
||||
allowNull: false
|
||||
},
|
||||
title: {
|
||||
type: DataTypes.STRING,
|
||||
|
|
|
|||
|
|
@ -9,19 +9,11 @@ const Attendance = sequelize.define('Attendance', {
|
|||
},
|
||||
userId: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'Users',
|
||||
key: 'id'
|
||||
}
|
||||
allowNull: false
|
||||
},
|
||||
courseId: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'Courses',
|
||||
key: 'id'
|
||||
}
|
||||
allowNull: false
|
||||
},
|
||||
date: {
|
||||
type: DataTypes.DATEONLY,
|
||||
|
|
|
|||
|
|
@ -9,11 +9,7 @@ const Course = sequelize.define('Course', {
|
|||
},
|
||||
trainerId: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'Users',
|
||||
key: 'id'
|
||||
}
|
||||
allowNull: false
|
||||
},
|
||||
title: {
|
||||
type: DataTypes.STRING,
|
||||
|
|
|
|||
|
|
@ -9,19 +9,11 @@ const Enrollment = sequelize.define('Enrollment', {
|
|||
},
|
||||
userId: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'Users',
|
||||
key: 'id'
|
||||
}
|
||||
allowNull: false
|
||||
},
|
||||
courseId: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'Courses',
|
||||
key: 'id'
|
||||
}
|
||||
allowNull: false
|
||||
},
|
||||
status: {
|
||||
type: DataTypes.ENUM('pending', 'active', 'completed', 'cancelled'),
|
||||
|
|
|
|||
|
|
@ -8,7 +8,11 @@ const setupDatabase = async () => {
|
|||
try {
|
||||
console.log('🔄 Setting up database...');
|
||||
|
||||
// Sync database
|
||||
// Test database connection
|
||||
await sequelize.authenticate();
|
||||
console.log('✅ Database connection established.');
|
||||
|
||||
// Sync database with force to recreate all tables
|
||||
await sequelize.sync({ force: true });
|
||||
console.log('✅ Database synchronized successfully.');
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue