# Generated by Django 5.2.7 on 2026-02-23 14:00 import django.db.models.deletion from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Instructor', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('title', models.CharField(help_text='e.g. Professor of Computer Science', max_length=255)), ('bio', models.TextField()), ('expertise', models.CharField(max_length=255)), ('photo_url', models.URLField(blank=True, null=True)), ], ), migrations.CreateModel( name='Course', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=255)), ('slug', models.SlugField(unique=True)), ('description', models.TextField()), ('price', models.DecimalField(decimal_places=2, max_digits=10)), ('duration', models.CharField(help_text='e.g. 10 weeks', max_length=100)), ('level', models.CharField(choices=[('Beginner', 'Beginner'), ('Intermediate', 'Intermediate'), ('Advanced', 'Advanced')], max_length=50)), ('image_url', models.URLField(blank=True, null=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('instructor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='courses', to='core.instructor')), ], ), migrations.CreateModel( name='WishlistItem', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('added_at', models.DateTimeField(auto_now_add=True)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.course')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='wishlist', to=settings.AUTH_USER_MODEL)), ], options={ 'unique_together': {('user', 'course')}, }, ), ]