# Generated by Django 2.2.7 on 2019-12-06 02:17 from django.conf import settings import django.contrib.auth.validators from django.db import migrations, models import django.db.models.deletion import django.utils.timezone import university.models.user class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')), ('username', models.CharField(error_messages={'unique': 'already exists.'}, help_text='Required. 150 characters or fewer.Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')), ('email', models.EmailField(blank=True, error_messages={'unique': 'already exists.'}, max_length=254, null=True, unique=True, verbose_name='email')), ('email_verified', models.BooleanField(default=False, verbose_name='email verified')), ('phone', models.CharField(blank=True, error_messages={'unique': 'already exists'}, max_length=32, null=True, unique=True, verbose_name='phone number')), ('avatar_url', models.URLField(blank=True, null=True)), ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')), ('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')), ('ip_address', models.GenericIPAddressField(blank=True, null=True)), ('registration_ip_address', models.GenericIPAddressField(blank=True, null=True)), ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')), ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')), ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')), ], options={ 'verbose_name': 'user', 'verbose_name_plural': 'users', 'db_table': 'auth_user', }, managers=[ ('objects', university.models.user.UserManager()), ], ), migrations.CreateModel( name='Chapter', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('sequence', models.SmallIntegerField(default=0, help_text='will be orderd by sequence number')), ('title', models.CharField(max_length=64)), ('description', models.TextField()), ('slug', models.SlugField(null=True)), ], options={ 'db_table': 'chapters', }, ), migrations.CreateModel( name='UserProfile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('real_name', models.CharField(default='', max_length=64)), ('address', models.CharField(default='', max_length=128)), ('school', models.CharField(default='', max_length=64)), ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'user_profiles', }, ), migrations.CreateModel( name='Upload', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('original_filename', models.CharField(max_length=128)), ('filesize', models.IntegerField()), ('width', models.IntegerField(blank=True, null=True)), ('height', models.IntegerField(blank=True, null=True)), ('path', models.CharField(max_length=255)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('sha1', models.CharField(max_length=64)), ('origin', models.CharField(help_text='user can upload resource by url', max_length=255)), ('extension', models.CharField(default='application/octet-stream', max_length=64)), ('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.DO_NOTHING, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'uploads', }, ), migrations.CreateModel( name='Lesson', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=64)), ('description', models.TextField()), ('speaker', models.CharField(max_length=64)), ('sequence', models.SmallIntegerField(default=0, help_text='will be orderd by sequence number')), ('periods', models.SmallIntegerField(default=1)), ('chapter', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='university.Chapter')), ('cover_image', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='university.Upload')), ], options={ 'db_table': 'lessons', }, ), migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=64)), ('description', models.TextField(default='', null=True)), ('slug', models.SlugField(unique=True)), ('license', models.SmallIntegerField(choices=[(0, 'free'), (1, 'vip')], default=0)), ('cover_image', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='university.Upload')), ], options={ 'db_table': 'courses', }, ), migrations.AddField( model_name='chapter', name='course', field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='university.Course'), ), ]