Files
Flagman/schedule/migrations/0001_initial.py
Dmitriy 60b4e0e839 init
2025-06-23 01:24:34 +03:00

61 lines
2.7 KiB
Python

# Generated by Django 5.0.2 on 2025-06-10 19:27
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
('course', '0001_initial'),
('instructor', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='Course',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100)),
('description', models.TextField()),
('duration', models.IntegerField(help_text='Длительность в часах')),
('price', models.DecimalField(decimal_places=2, max_digits=10)),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
],
),
migrations.CreateModel(
name='Lesson',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('lesson_type', models.CharField(choices=[('theory', 'Теоретическое'), ('practice', 'Практическое'), ('exam', 'Экзамен')], max_length=20)),
('start_time', models.DateTimeField()),
('end_time', models.TimeField()),
('max_students', models.PositiveIntegerField(default=10)),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='lessons', to='course.course')),
('instructor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='lessons', to='instructor.instructor')),
],
options={
'verbose_name': 'Занятие',
'verbose_name_plural': 'Занятия',
'ordering': ['start_time'],
},
),
migrations.CreateModel(
name='LessonEnrollment',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('lesson', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='enrollments', to='schedule.lesson')),
],
options={
'verbose_name': 'Запись на занятие',
'verbose_name_plural': 'Записи на занятия',
},
),
]