class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='PEvent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('email', models.EmailField(max_length=100)), ('contact', models.CharField(max_length=10)), ('image', models.ImageField(upload_to='pictures/')), ], ), migrations.CreateModel( name='WEvent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('email', models.EmailField(max_length=100)), ('contact', models.CharField(max_length=10)), ('docfile', models.FileField(upload_to='uploads/%Y/%m/%d', validators=[content.models.WEvent.validate_file_extension])), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0002_systemsetting'), ] operations = [ migrations.CreateModel( name='Albumn', fields=[ ('id', models.CharField(default=uuid.uuid4, max_length=64, primary_key=True, serialize=False, verbose_name='Activation key')), ('name', models.CharField(db_index=True, max_length=60, unique=True)), ('weight', models.IntegerField(default=0)), ('slug', models.SlugField(max_length=150, unique=True)), ('created', models.DateTimeField(auto_now_add=True, db_index=True)), ('active', models.BooleanField(default=True)), ], ), migrations.CreateModel( name='Image', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(blank=True, max_length=60, null=True)), ('image_key', models.CharField(default=uuid.uuid4, max_length=64, verbose_name='Activation key')), ('image', models.ImageField(storage=content.storage.OverwriteStorage(), upload_to=content.models.image_upload_path)), ('created', models.DateTimeField(auto_now_add=True)), ('active', models.BooleanField(default=True)), ('weight', models.IntegerField(default=0)), ('albumn', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Albumn')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, unique=True)), ], ), migrations.CreateModel( name='File', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, unique=True)), ('file_path', models.FileField(upload_to=content.models.content_file_name)), ('data_created', models.DateTimeField(default=django.utils.timezone.now)), ('price', models.BigIntegerField()), ('description', models.TextField(blank=True, null=True)), ('order', models.IntegerField(default=0)), ], options={ 'ordering': ['order'], }, ), migrations.CreateModel( name='Product', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, unique=True)), ('price', models.BigIntegerField()), ('created_at', models.DateTimeField(auto_now_add=True)), ('description', models.TextField(blank=True, null=True)), ('categories', models.ManyToManyField(to='content.Category')), ], options={ 'ordering': ['-created_at'], }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=120)), ('slug', models.SlugField(unique=True)), ('active', models.BooleanField(default=True)), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ], ), migrations.CreateModel( name='Post', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=120)), ('title_pic', models.CharField(max_length=120)), ('content', models.TextField()), ('image_height', models.IntegerField(blank=True, null=True)), ('image_width', models.IntegerField(blank=True, null=True)), ('image', models.ImageField(height_field='image_height', upload_to=content.models.post_image_upload, width_field='image_width')), ('share_num', models.IntegerField()), ('article_id', models.IntegerField()), ('location', models.CharField(max_length=50)), ('post_type', models.IntegerField()), ('public', models.BooleanField(default=True)), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='category_posts', to='content.Category')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('turns', '0019_auto_20180301_1139'), ] operations = [ migrations.CreateModel( name='Content', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('url', models.CharField(max_length=1024)), ('type', enumfields.fields.EnumField(enum=content.models.ContentType, max_length=3)), ('for_player', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='turns.Player')), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0010_book_count'), ] operations = [ migrations.AddField( model_name='blog', name='upload_type', field=models.CharField(choices=[('L', 'Link'), ('P', 'PDF')], default='L', max_length=1), ), migrations.AddField( model_name='book', name='book_pdf', field=models.FileField( blank=True, default=None, null=True, upload_to=content.models.get_book_path, validators=[ django.core.validators.FileExtensionValidator(['pdf']) ]), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0062_firebasesettings'), ] operations = [ migrations.AddField( model_name='firebasesettings', name='credentials', field=jsonfield.fields.JSONField(blank=True, default=dict), ), migrations.AlterField( model_name='firebasesettings', name='credentials_file', field=models.FileField(blank=True, unique=True, upload_to=content.models.update_filename), ), migrations.CreateModel( name='FirebaseRequest', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('collection', models.CharField(max_length=255)), ('fields', jsonfield.fields.JSONField(blank=True, null=True)), ('request', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.FirebaseSettings')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='CMSAuthorContent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content_title', models.CharField(blank=True, max_length=30)), ('content_body', models.TextField(blank=True, max_length=300)), ('content_summary', models.TextField(blank=True, max_length=60)), ('content_file_pdf', models.FileField(blank=True, upload_to=content.models.upload_location)), ('content_category', models.CharField(blank=True, max_length=50)), ('date_published', models.DateTimeField(auto_now_add=True, verbose_name='date published')), ('date_updated', models.DateTimeField(auto_now=True, verbose_name='date updated')), ('slug', models.SlugField(blank=True, unique=True)), ('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0005_auto_20180117_1122'), ] operations = [ migrations.AlterField( model_name='app', name='name', field=models.CharField(max_length=30, verbose_name='이름'), ), migrations.AlterField( model_name='content', name='asset_bundle_name', field=models.CharField(max_length=50, verbose_name='Asset Bundle 이름'), ), migrations.AlterField( model_name='content', name='name', field=models.CharField(max_length=50, verbose_name='이름'), ), migrations.AlterField( model_name='content', name='scene_name', field=models.CharField(max_length=50, verbose_name='Unity Scene 이름'), ), migrations.AlterField( model_name='contentversion', name='download_url', field=models.URLField(verbose_name='다운로드 URL'), ), migrations.AlterField( model_name='contentversion', name='version_number', field=models.CharField( max_length=8, validators=[content.models.version_number_validator], verbose_name='버전명'), ), migrations.AlterField( model_name='launcherversion', name='download_url', field=models.URLField(verbose_name='다운로드 URL'), ), migrations.AlterField( model_name='launcherversion', name='version_number', field=models.CharField( max_length=8, validators=[content.models.version_number_validator], verbose_name='버전명'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=35)), ('name_ar', models.CharField(max_length=35)), ('age_rating', models.CharField(max_length=3)), ('difficulty', models.IntegerField(validators=[django.core.validators.MaxValueValidator(5, 'Maximum Limit is 5')])), ('created_date', models.DateTimeField(default=datetime.datetime.now)), ('creator_id', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='creator', to=settings.AUTH_USER_MODEL)), ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Category')), ], ), migrations.CreateModel( name='Question', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=35, null=True)), ('name_ar', models.CharField(blank=True, max_length=35, null=True)), ('age_rating', models.CharField(max_length=3)), ('Correct_answer', models.CharField(max_length=150)), ('difficulty', models.IntegerField(validators=[django.core.validators.MaxValueValidator(5, 'Maximum Limit is 5')])), ('Category_parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Category')), ('creator_id', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='maker', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='QuestionImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('question_image', models.ImageField(blank=True, null=True, upload_to=content.models.get_image_path)), ('Question', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='content.Question')), ], ), migrations.AddField( model_name='question', name='question_image', field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='Image', to='content.QuestionImage'), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0001_initial'), ] operations = [ migrations.AlterField( model_name='todolist', name='description', field=models.TextField( validators=[content.models.min_length_1_validator]), ), migrations.AlterField( model_name='todolist', name='title', field=models.CharField( max_length=100, validators=[content.models.min_length_1_validator]), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0028_auto_20170108_1657'), ] operations = [ migrations.CreateModel( name='Banner', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField( max_length=250, verbose_name= b'\xd0\x9d\xd0\xb0\xd0\xb7\xd0\xb2\xd0\xb0\xd0\xbd\xd0\xb8\xd0\xb5' )), ('image', content.fields.ThumbnailImageField( blank=True, upload_to=content.models.make_upload_path, verbose_name= b'\xd0\x98\xd0\xb7\xd0\xbe\xd0\xb1\xd1\x80\xd0\xb0\xd0\xb6\xd0\xb5\xd0\xbd\xd0\xb8\xd0\xb5' )), ('link', models.CharField( blank=True, max_length=250, null=True, verbose_name= b'\xd0\xa1\xd1\x81\xd1\x8b\xd0\xbb\xd0\xba\xd0\xb0')), ('title', models.CharField( blank=True, max_length=250, null=True, verbose_name= b'\xd0\x97\xd0\xb0\xd0\xb3\xd0\xbe\xd0\xbb\xd0\xbe\xd0\xb2\xd0\xbe\xd0\xba' )), ('descr', models.CharField( blank=True, max_length=250, null=True, verbose_name= b'\xd0\x9e\xd0\xbf\xd0\xb8\xd1\x81\xd0\xb0\xd0\xbd\xd0\xb8\xd0\xb5' )), ('ordering', models.IntegerField( blank=True, default=0, null=True, verbose_name= b'\xd0\x9f\xd0\xbe\xd1\x80\xd1\x8f\xd0\xb4\xd0\xbe\xd0\xba \xd1\x81\xd0\xbe\xd1\x80\xd1\x82\xd0\xb8\xd1\x80\xd0\xbe\xd0\xb2\xd0\xba\xd0\xb8' )), ], options={ 'verbose_name': '\u0411\u0430\u043d\u0435\u0440', 'verbose_name_plural': '\u0411\u0430\u043d\u0435\u0440\u0430', }, ), migrations.AlterField( model_name='article', name='pub_date', field=models.DateField( blank=True, default=datetime.datetime(2017, 1, 8, 19, 5, 8, 614166, tzinfo=utc), verbose_name= b'\xd0\x94\xd0\xb0\xd1\x82\xd0\xb0 \xd0\xbf\xd1\x83\xd0\xb1\xd0\xbb\xd0\xb8\xd0\xba\xd0\xb0\xd1\x86\xd0\xb8\xd0\xb8' ), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Articles', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('article_title', models.CharField(blank=True, max_length=200, unique=True, verbose_name='Заголовок статьи')), ('article_link', models.SlugField(default='', max_length=150, verbose_name='Ссылка в браузере')), ('metakey', models.CharField(blank=True, max_length=255, verbose_name='Ключевые слова')), ('metadesc', models.CharField(blank=True, max_length=255, verbose_name='Мета описание')), ('image', models.ImageField(blank=True, upload_to=content.models.make_upload_path, verbose_name='Изображение')), ('article_anons', ckeditor.fields.RichTextField(blank=True, verbose_name='Анонс статьи')), ('article_text', ckeditor_uploader.fields.RichTextUploadingField( blank=True, verbose_name='Полный текст статьи')), ('article_date', models.DateTimeField(blank=True, default=django.utils.timezone.now, verbose_name='Дата публикации')), ('recipe', models.BooleanField(default=False, verbose_name='Рецепт')), ('article_publish', models.BooleanField(default=True, verbose_name='Опубликован')), ], options={ 'verbose_name': 'Статья, рецепт', 'verbose_name_plural': 'Статьи и рецепты', 'db_table': 'articles', }, ), migrations.CreateModel( name='Categories', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('category_name', models.CharField(db_index=True, default='', max_length=200, unique=True, verbose_name='Категория')), ('category_link', models.SlugField(default='', max_length=150)), ('metakey', models.CharField(blank=True, max_length=255, verbose_name='Ключевые слова')), ('metadesc', models.CharField(blank=True, max_length=255, verbose_name='Мета описание')), ('in_header', models.SmallIntegerField( blank=True, default=0, null=True, verbose_name='Категория в шапке сайта')), ('class_in_header', models.CharField(blank=True, default=False, max_length=20, null=True)), ], options={ 'verbose_name': 'категория', 'verbose_name_plural': 'категории', 'db_table': 'categories', 'ordering': ['id'], }, ), migrations.CreateModel( name='Comments', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user_name', models.CharField(max_length=50, verbose_name='Имя пользователя')), ('comment_date', models.DateField(default=django.utils.timezone.now, verbose_name='Дата')), ('comments_text', models.TextField(blank=True, verbose_name='Кометарий')), ('comments_article', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Articles', verbose_name='Коментарий для статьи')), ], options={ 'verbose_name': 'коментарий', 'verbose_name_plural': 'коментарии', 'db_table': 'comments', 'ordering': ['-comment_date'], }, ), migrations.AddField( model_name='articles', name='category_article', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Categories', verbose_name='Категория статьи'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('core', '0001_initial'), ] operations = [ migrations.CreateModel( name='Blog', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('body', models.TextField()), ('author', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='core.Profile')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ], options={ 'verbose_name_plural': 'categories', }, ), migrations.CreateModel( name='ContentImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('image', models.ImageField(blank=True, null=True, upload_to='content-img')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Page', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('body', models.TextField()), ('order', models.PositiveSmallIntegerField(blank=True, null=True)), ('footer_link', models.BooleanField(default=False)), ('is_home', models.BooleanField(db_index=True, default=False, editable=False)), ('images', models.ManyToManyField(related_name='page', to='content.ContentImage')), ], options={ 'ordering': ['section', 'order'], }, ), migrations.CreateModel( name='Section', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('order', models.PositiveSmallIntegerField(default=content.models.section_default, unique=True)), ], options={ 'ordering': ['order'], }, ), migrations.AddField( model_name='page', name='section', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='pages', to='content.Section'), ), migrations.AddField( model_name='blog', name='categories', field=models.ManyToManyField(related_name='blogs', to='content.Category'), ), migrations.AddField( model_name='blog', name='images', field=models.ManyToManyField(related_name='blog', to='content.ContentImage'), ), migrations.AlterUniqueTogether( name='page', unique_together=set([('section', 'order')]), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Character', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('chinese', models.CharField(max_length=1)), ('pinyin', models.CharField(max_length=15)), ('part_of_speech_1', models.CharField(max_length=50)), ('definition_1', models.CharField(max_length=100)), ('part_of_speech_2', models.CharField(blank=True, max_length=50, null=True)), ('definition_2', models.CharField(blank=True, max_length=100, null=True)), ('explanation_2', models.CharField(blank=True, max_length=300, null=True)), ('part_of_speech_3', models.CharField(blank=True, max_length=50, null=True)), ('definition_3', models.CharField(blank=True, max_length=100, null=True)), ('explanation_3', models.CharField(blank=True, max_length=300, null=True)), ('mnemonic_explanation', models.CharField(max_length=800)), ('example_1_word', models.CharField(max_length=10)), ('example_1_pinyin', models.CharField(max_length=25)), ('example_1_character', models.CharField(max_length=100)), ('example_1_meaning', models.CharField(max_length=100)), ('example_2_word', models.CharField(blank=True, max_length=10, null=True)), ('example_2_pinyin', models.CharField(blank=True, max_length=25, null=True)), ('example_2_character', models.CharField(blank=True, max_length=100, null=True)), ('example_2_meaning', models.CharField(blank=True, max_length=100, null=True)), ('is_preview_definition', models.BooleanField()), ('is_preview_pinyin', models.BooleanField()), ('structure', models.IntegerField(null=True)), ('stroke_order_image', models.ImageField(default='default.jpg', upload_to='')), ], options={ 'ordering': ['id'], }, bases=(models.Model, content.models.DFModelMixin, jiezi.utils.mixins.StrDefaultReprMixin), ), migrations.CreateModel( name='Radical', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('chinese', models.CharField(max_length=6)), ('pinyin', models.CharField(max_length=15)), ('definition', models.CharField(max_length=100)), ('mnemonic_explanation', models.CharField(blank=True, max_length=300, null=True)), ('mnemonic_image', models.ImageField(default='default.jpg', upload_to='')), ('is_phonetic', models.BooleanField()), ('is_semantic', models.BooleanField()), ], options={ 'ordering': ['id'], }, bases=(models.Model, content.models.DFModelMixin, jiezi.utils.mixins.StrDefaultReprMixin), ), migrations.CreateModel( name='CharacterSet', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50)), ('characters', models.ManyToManyField(to='content.Character')), ], bases=(models.Model, content.models.DFModelMixin, jiezi.utils.mixins.StrDefaultReprMixin), ), migrations.AddField( model_name='character', name='radical_1', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='+', to='content.radical'), ), migrations.AddField( model_name='character', name='radical_2', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='content.radical'), ), migrations.AddField( model_name='character', name='radical_3', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='content.radical'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, verbose_name='category name')), ('slug', models.SlugField(max_length=30, unique=True, verbose_name='category slug')), ], ), migrations.CreateModel( name='Comment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('text', models.TextField(verbose_name='comment text')), ('pub_date', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='date published')), ], options={ 'ordering': ('pub_date',), }, ), migrations.CreateModel( name='Genre', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, verbose_name='genre name')), ('slug', models.SlugField(max_length=30, unique=True, verbose_name='genre slug')), ], ), migrations.CreateModel( name='Review', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('text', models.TextField(verbose_name='review text')), ('score', models.IntegerField(validators=[django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(10)], verbose_name='title score')), ('pub_date', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='date published')), ], options={ 'ordering': ('pub_date',), }, ), migrations.CreateModel( name='Title', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, verbose_name='title name')), ('year', models.IntegerField(db_index=True, default=0, validators=[content.models.validate_year], verbose_name='year of creation')), ('description', models.TextField(blank=True, verbose_name='title description')), ('category', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='category_titles', to='content.Category', verbose_name='category')), ('genre', models.ManyToManyField(blank=True, related_name='genre_titles', to='content.Genre', verbose_name='genre')), ], options={ 'ordering': ('year',), }, ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0002_auto_20191213_1123'), ] operations = [ migrations.CreateModel( name='Article', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=120)), ('body', models.TextField()), ('active', models.BooleanField(default=True)), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ], ), migrations.RenameField( model_name='post', old_name='content', new_name='desc', ), migrations.RemoveField( model_name='post', name='article_id', ), migrations.AddField( model_name='post', name='active', field=models.BooleanField(default=True), ), migrations.AlterField( model_name='post', name='category', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Category'), ), migrations.AlterField( model_name='post', name='post_type', field=models.CharField(choices=[('image ', '图文'), ('video', '视频')], max_length=10), ), migrations.CreateModel( name='Topic', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=120)), ('title_pic', models.CharField(max_length=120)), ('desc', models.CharField(max_length=120)), ('active', models.BooleanField(default=True)), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Category')), ], ), migrations.CreateModel( name='PostVideo', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('video', models.FileField(upload_to=content.models.post_video_upload)), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Post')), ], ), migrations.AddField( model_name='post', name='article', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Article'), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0001_initial'), ] operations = [ migrations.CreateModel( name='App', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=30, unique=True, verbose_name='이름')), ], ), migrations.AlterModelOptions( name='content', options={ 'verbose_name': '콘텐츠', 'verbose_name_plural': '콘텐츠' }, ), migrations.AlterModelOptions( name='contentversion', options={ 'verbose_name': '콘텐츠 버전', 'verbose_name_plural': '콘텐츠 버전' }, ), migrations.AlterModelOptions( name='launcherversion', options={ 'verbose_name': '런처 버전', 'verbose_name_plural': '런처 버전' }, ), migrations.AddField( model_name='content', name='asset_bundle_name', field=models.CharField(default='', max_length=50, unique=True, verbose_name='Asset Bundle 이름'), preserve_default=False, ), migrations.AddField( model_name='contentversion', name='asset_bundle_number', field=models.PositiveIntegerField(default=0, verbose_name='Asset Bundle 번호'), preserve_default=False, ), migrations.AlterField( model_name='content', name='name', field=models.CharField(max_length=50, unique=True, verbose_name='이름'), ), migrations.AlterField( model_name='content', name='scene_name', field=models.CharField(max_length=50, unique=True, verbose_name='Unity Scene 이름'), ), migrations.AlterField( model_name='contentversion', name='content', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='versions', to='content.Content', verbose_name='콘텐츠'), ), migrations.AlterField( model_name='contentversion', name='download_url', field=models.URLField(unique=True, verbose_name='다운로드 URL'), ), migrations.AlterField( model_name='contentversion', name='minimum_launcher_version', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='content.LauncherVersion', verbose_name='최소 런처 버전'), ), migrations.AlterField( model_name='contentversion', name='update_time', field=models.DateTimeField(auto_now_add=True, verbose_name='업데이트 시간'), ), migrations.AlterField( model_name='contentversion', name='version_number', field=models.CharField( max_length=8, unique=True, validators=[content.models.version_number_validator], verbose_name='버전명'), ), migrations.AlterField( model_name='launcherversion', name='download_url', field=models.URLField(unique=True, verbose_name='다운로드 URL'), ), migrations.AlterField( model_name='launcherversion', name='update_time', field=models.DateTimeField(auto_now_add=True, verbose_name='업데이트 시간'), ), migrations.AlterField( model_name='launcherversion', name='version_number', field=models.CharField( max_length=8, unique=True, validators=[content.models.version_number_validator], verbose_name='버전명'), ), migrations.AlterUniqueTogether( name='contentversion', unique_together={('content', 'asset_bundle_number')}, ), migrations.AddField( model_name='content', name='app', field=models.ForeignKey( default=1, on_delete=django.db.models.deletion.DO_NOTHING, to='content.App', verbose_name='앱'), preserve_default=False, ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Document', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('time_created', models.DateTimeField(auto_now_add=True)), ('title', models.CharField(blank=True, max_length=300)), ('author', models.CharField(blank=True, max_length=200)), ('date_published', models.DateField( blank=True, help_text='Date on which the document was published', null=True)), ('file', models.FileField(blank=True, upload_to='documents/')), ('link', models.URLField( blank=True, help_text='Link to document if external file')), ('description', models.TextField( blank=True, help_text='Text to describe contents of the document')), ('tags', django.contrib.postgres.fields.ArrayField( base_field=models.CharField( max_length=100, validators=[content.models.validate_tag]), blank=True, db_index=True, null=True, size=None)), ], ), migrations.CreateModel( name='Image', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('time_created', models.DateTimeField(auto_now_add=True, db_index=True)), ('image', versatileimagefield.fields.VersatileImageField( height_field='height', upload_to='images/', verbose_name='Image', width_field='width')), ('caption', models.TextField(blank=True)), ('height', models.PositiveIntegerField(blank=True, null=True, verbose_name='Image Height')), ('width', models.PositiveIntegerField(blank=True, null=True, verbose_name='Image Width')), ('tags', django.contrib.postgres.fields.ArrayField( base_field=models.CharField( max_length=100, validators=[content.models.validate_tag]), blank=True, db_index=True, null=True, size=None)), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='', max_length=255)), ('slug', models.SlugField(editable=False, max_length=30, unique=True)), ('duration', models.IntegerField(default=4)), ('no_of_semesters', models.IntegerField(default=8)), ], ), migrations.CreateModel( name='Exam_Paper_Count', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('paper_cnt', models.IntegerField(default=0)), ], ), migrations.CreateModel( name='Note_Count', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('note_cnt', models.IntegerField(default=0)), ], ), migrations.CreateModel( name='Subject', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='', max_length=255)), ('slug', models.SlugField(editable=False, max_length=30, unique=True)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ], ), migrations.CreateModel( name='Note', fields=[ ('note_id', models.CharField(max_length=20, primary_key=True, serialize=False)), ('title', models.CharField(default='', max_length=300)), ('note_pdf', models.FileField( blank=True, default=None, null=True, upload_to=content.models.get_note_path, validators=[ django.core.validators.FileExtensionValidator(['pdf']) ])), ('is_approved', models.BooleanField(default=False)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ('subject', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Subject', verbose_name='Subject')), ('upvotes', models.ManyToManyField(related_name='upvotes', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Provider')), ], ), migrations.CreateModel( name='Exam_Paper', fields=[ ('paper_id', models.CharField(max_length=20, primary_key=True, serialize=False)), ('title', models.CharField(default='', max_length=300)), ('batch_year', models.IntegerField()), ('semester', models.IntegerField()), ('exam', models.CharField(max_length=20)), ('exam_type', models.CharField(choices=[('T', 'Theory'), ('P', 'Practical')], default='T', max_length=1)), ('paper_pdf', models.FileField( blank=True, default=None, null=True, upload_to=content.models.get_paper_path, validators=[ django.core.validators.FileExtensionValidator(['pdf']) ])), ('is_approved', models.BooleanField(default=False)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ('subject', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Subject', verbose_name='Subject')), ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Provider')), ], ), migrations.CreateModel( name='Book', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=300)), ('author', models.CharField(max_length=300)), ('image', models.ImageField(default='download.jpg', upload_to='books/')), ('flink', models.CharField(blank=True, max_length=300)), ('alink', models.CharField(blank=True, default='', max_length=300)), ('slug', models.SlugField(editable=False, max_length=30, unique=True)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ('subject', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Subject', verbose_name='Subject')), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('wagtailcore', '0040_page_draft_title'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('taggit', '0002_auto_20150616_2121'), ('content', '0044_tagindex_body'), ] operations = [ migrations.CreateModel( name='CustomImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=255, verbose_name='title')), ('file', models.ImageField( height_field='height', upload_to=wagtail.wagtailimages.models.get_upload_to, verbose_name='file', width_field='width')), ('width', models.IntegerField(editable=False, verbose_name='width')), ('height', models.IntegerField(editable=False, verbose_name='height')), ('created_at', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='created at')), ('focal_point_x', models.PositiveIntegerField(blank=True, null=True)), ('focal_point_y', models.PositiveIntegerField(blank=True, null=True)), ('focal_point_width', models.PositiveIntegerField(blank=True, null=True)), ('focal_point_height', models.PositiveIntegerField(blank=True, null=True)), ('file_size', models.PositiveIntegerField(editable=False, null=True)), ('collection', models.ForeignKey( default=wagtail.wagtailcore.models.get_root_collection_id, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Collection', verbose_name='collection')), ('tags', taggit.managers.TaggableManager(blank=True, help_text=None, through='taggit.TaggedItem', to='taggit.Tag', verbose_name='tags')), ('uploaded_by_user', models.ForeignKey( blank=True, editable=False, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='uploaded by user')), ], options={ 'abstract': False, }, bases=(wagtail.wagtailsearch.index.Indexed, models.Model), ), migrations.CreateModel( name='CustomRendition', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('filter_spec', models.CharField(db_index=True, max_length=255)), ('file', models.ImageField(height_field='height', upload_to=wagtail.wagtailimages.models. get_rendition_upload_to, width_field='width')), ('width', models.IntegerField(editable=False)), ('height', models.IntegerField(editable=False)), ('focal_point_key', models.CharField(blank=True, default='', editable=False, max_length=16)), ('image', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='renditions', to='content.CustomImage')), ], ), migrations.AlterField( model_name='articlepage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='blogpage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='eventpage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='issuepage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='newspage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterUniqueTogether( name='customrendition', unique_together=set([('image', 'filter_spec', 'focal_point_key')]), ), ]
class Migration(migrations.Migration): dependencies = [ ('wagtailcore', '0040_page_draft_title'), ('taggit', '0002_auto_20150616_2121'), ('wagtailimages', '0019_delete_filter'), ('content', '0036_blogcategory_short_description'), ] operations = [ migrations.CreateModel( name='EventIndex', fields=[ ('page_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ], options={ 'abstract': False, }, bases=(content.models.MobileTemplateMixin, 'wagtailcore.page'), ), migrations.CreateModel( name='EventPage', fields=[ ('page_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('full_title', models.CharField(blank=True, help_text='До 150 символов', max_length=150, null=True, verbose_name='Полный заголовок')), ('short_lead', models.TextField(help_text='До 160 символов', max_length=300, verbose_name='Короткий лид')), ('full_lead', models.TextField(blank=True, help_text='До 250 символов', max_length=300, null=True, verbose_name='Полный лид')), ('count_view', models.PositiveIntegerField(default=0)), ('allowed_comments', models.BooleanField(default=True, verbose_name='Включить комментарии')), ('body', wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.RichTextBlock( label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')))) ), ('show_in_news', models.BooleanField(default=False, verbose_name='Отображать в новостях')), ('show_in_promo', models.BooleanField(default=False, verbose_name='Отображать в promotion')), ('old_id', models.IntegerField(blank=True, null=True)), ('published_at', models.DateTimeField(blank=True, null=True, verbose_name='Дата/время публикации')), ('active_from', models.DateTimeField(verbose_name='Дата и время начала')), ('active_to', models.DateTimeField(verbose_name='Дата и время конца')), ('preview_picture', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.Image', verbose_name='Основная иллюстрация')), ], options={ 'verbose_name': 'Событие', 'verbose_name_plural': 'События', }, bases=( content.models.MobileTemplateMixin, wagtail.contrib.wagtailroutablepage.models.RoutablePageMixin, 'wagtailcore.page'), ), migrations.CreateModel( name='EventPageTag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content_object', modelcluster.fields.ParentalKey( on_delete=django.db.models.deletion.CASCADE, related_name='tagged_items', to='content.EventPage')), ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='content_eventpagetag_items', to='taggit.Tag')), ], options={ 'abstract': False, }, ), migrations.AddField( model_name='eventpage', name='tags', field=modelcluster.contrib.taggit.ClusterTaggableManager( blank=True, help_text='A comma-separated list of tags.', through='content.EventPageTag', to='taggit.Tag', verbose_name='Теги'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50, verbose_name='名称')), ('content', models.TextField(help_text='用 markdown 书写', verbose_name='分类描述正文')), ('content_html', models.TextField(blank=True, editable=False, verbose_name='正文html代码')), ('desc', models.CharField(max_length=1024, verbose_name='摘要')), ], options={ 'verbose_name': '分类', 'verbose_name_plural': '分类', 'ordering': ['-id'], }, bases=(content.models.TranMarkdown, models.Model), ), migrations.CreateModel( name='IndexContent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('order_number', models.PositiveSmallIntegerField(help_text='只能使用正整数且唯一', unique=True, verbose_name='序号')), ('title', models.CharField(help_text='不填则不显示标题', max_length=50, verbose_name='标题')), ('does_show_title', models.BooleanField(default=True, verbose_name='是否显示标题')), ('content_type', models.PositiveIntegerField(choices=[(1, 'HTML'), (2, '最热文章'), (3, '最新文章')], default=1, verbose_name='展示类型')), ('content', models.CharField(blank=True, help_text='只有选择 HTML 时才需要填写内容', max_length=1024, verbose_name='内容')), ], options={ 'verbose_name': '首页内容区', 'verbose_name_plural': '首页内容区', 'ordering': ['order_number'], }, ), migrations.CreateModel( name='Link', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('order_number', models.PositiveSmallIntegerField(help_text='只能使用正整数且唯一', unique=True, verbose_name='序号')), ('url', models.CharField(help_text='建议使用绝对路径', max_length=200, verbose_name='URL')), ('anchor_word', models.CharField(max_length=50, verbose_name='锚文字')), ('create_time', models.DateTimeField(verbose_name='创建时间')), ('does_follow', models.BooleanField(default=False, verbose_name='是否跟踪')), ], options={ 'verbose_name': '底部文字链接', 'verbose_name_plural': '底部文字链接', 'ordering': ['order_number'], }, ), migrations.CreateModel( name='Page', fields=[ ('link_word', models.CharField(help_text='只能使用字母', max_length=50, primary_key=True, serialize=False, unique=True, verbose_name='URL字符串')), ('title', models.CharField(max_length=50, verbose_name='标题')), ('author', models.CharField(max_length=10, verbose_name='作者')), ('content', models.TextField(help_text='用 markdown 书写', verbose_name='正文')), ('content_html', models.TextField(blank=True, editable=False, verbose_name='正文html代码')), ('create_time', models.DateTimeField(verbose_name='创建时间')), ('update_time', models.DateTimeField(verbose_name='更新时间')), ('does_nav', models.BooleanField(default=False, verbose_name='是否添至导航栏')), ('does_follow', models.BooleanField(default=False, verbose_name='是否跟踪')), ('desc', models.CharField(max_length=1024, verbose_name='摘要')), ], options={ 'verbose_name': '独立页面', 'verbose_name_plural': '独立页面', 'ordering': ['link_word'], }, bases=(content.models.TranMarkdown, models.Model), ), migrations.CreateModel( name='SideBar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('order_number', models.PositiveSmallIntegerField(help_text='只能使用正整数且唯一', unique=True, verbose_name='序号')), ('title', models.CharField(max_length=50, verbose_name='标题')), ('does_show_title', models.BooleanField(default=True, verbose_name='是否显示标题')), ('sidebar_type', models.PositiveIntegerField(choices=[(1, 'HTML'), (2, '最热文章'), (3, '最新文章')], default=1, verbose_name='展示类型')), ('content', models.CharField(blank=True, help_text='只有选择 HTML 时才需要填写内容', max_length=1024, verbose_name='内容')), ], options={ 'verbose_name': '侧边栏', 'verbose_name_plural': '侧边栏', 'ordering': ['order_number'], }, ), migrations.CreateModel( name='Tag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50, verbose_name='名称')), ('content', models.TextField(help_text='用 markdown 书写', verbose_name='标签描述正文')), ('content_html', models.TextField(blank=True, editable=False, verbose_name='正文html代码')), ('desc', models.CharField(max_length=1024, verbose_name='摘要')), ], options={ 'verbose_name': '标签', 'verbose_name_plural': '标签', 'ordering': ['-id'], }, bases=(content.models.TranMarkdown, models.Model), ), migrations.CreateModel( name='Article', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=50, verbose_name='标题')), ('author', models.CharField(max_length=10, verbose_name='作者')), ('create_time', models.DateTimeField(verbose_name='创建时间')), ('update_time', models.DateTimeField(verbose_name='更新时间')), ('desc', models.CharField(max_length=1024, verbose_name='摘要')), ('content', models.TextField(help_text='用 markdown 书写', verbose_name='正文')), ('content_html', models.TextField(blank=True, editable=False, verbose_name='正文html代码')), ('category', models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, to='content.Category', verbose_name='分类')), ('tag', models.ManyToManyField(to='content.Tag', verbose_name='标签')), ], options={ 'verbose_name': '文章', 'verbose_name_plural': '文章', 'ordering': ['-create_time'], }, bases=(content.models.TranMarkdown, models.Model), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] 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': 'A user with that username 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')), ('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')), ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')), ('email', models.EmailField(blank=True, max_length=254, verbose_name='email address')), ('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')), ('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', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=25)), ('slug', models.SlugField(blank=True)), ('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='owner', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Category', 'verbose_name_plural': 'Categories', }, ), migrations.CreateModel( name='UnauthorizedUserLink', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=25, verbose_name='Name')), ('slug', models.SlugField(blank=True)), ('link', models.CharField(max_length=100)), ('image', models.ImageField(blank=True, upload_to=content.models.image_folder, verbose_name='Image url')), ], options={ 'verbose_name': 'UnauthorizedUserLink', 'verbose_name_plural': 'UnauthorizedUserLinks', }, ), migrations.CreateModel( name='Version', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('version', models.CharField(max_length=5, verbose_name='Версия')), ('description', models.TextField(verbose_name='Что нового в версии')), ('year', models.PositiveSmallIntegerField(verbose_name='Текущий год')), ], ), migrations.CreateModel( name='Link', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=25, verbose_name='Name')), ('slug', models.SlugField(blank=True)), ('link', models.CharField(max_length=100)), ('image', models.ImageField(blank=True, upload_to=content.models.image_folder, verbose_name='Image url')), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='category', to='content.category')), ], options={ 'verbose_name': 'Link', 'verbose_name_plural': 'Links', }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Author', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(default='le author name', max_length=200)), ('image', models.ImageField( blank=True, null=True, upload_to=content.models.author_image_directory_path)), ('bio', ckeditor.fields.RichTextField(default='author bio')), ('slug', models.SlugField(max_length=200, unique=True)), ], ), migrations.CreateModel( name='Classification', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('discipline', models.CharField( default='le discipline', help_text='topic discipline (ex: Neuroscience)', max_length=100)), ('academic_field', models.CharField(choices=[('S', 'Sciences'), ('H', 'Humanities')], help_text='Sciences or Humanities', max_length=2)), ], ), migrations.CreateModel( name='Episode', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('unique_id', models.CharField( blank=True, default=uuid.uuid4, help_text= 'This determines the Disqus comment section. Need to set this manually for old KiW episodes (that were on Flask)', max_length=100, unique=True)), ('title', models.CharField(default='le title', max_length=100, unique=True)), ('topic_image', models.ImageField( blank=True, null=True, upload_to=content.models.episode_image_directory_path, verbose_name='Cover image')), ('topic_image_latest', models.ImageField( blank=True, help_text="The cover image for 'featured' on the homepage", null=True, upload_to=content.models.episode_image_directory_path, verbose_name="'featured episode' cover image")), ('topic_image_box', models.ImageField( blank=True, help_text= 'This is for the circular audio player on mobile', null=True, upload_to=content.models.episode_image_directory_path, verbose_name='Mobile circular image')), ('transcript', ckeditor_uploader.fields.RichTextUploadingField( blank=True, default='le transcript', null=True)), ('abstract', ckeditor.fields.RichTextField(default='le abstract')), ('by_in_colour', models.CharField(choices=[('w', 'white'), ('b', 'black')], default='w', max_length=1, verbose_name="'by/in' colour")), ('author_name_size', models.CharField(choices=[('n', 'normal'), ('s', 'smaller')], default='n', max_length=1)), ('image_credits', ckeditor.fields.RichTextField( blank=True, default='', help_text= "Example of the correct format: The Morgan Library & Museum, New York. By <a target='_blank' href='https://commons.wikimedia.org/wiki/File:The_Morgan_Library_%26_Museum.jpg'>Paolatrabanco</a> [<a target='_blank' href='https://creativecommons.org/licenses/by-sa/4.0/deed.en'>CC BY-SA 4.0</a>]" )), ('narration_credits', models.CharField( blank=True, default='', help_text= 'Example of correct format: Mary Wellesley and Vidish Athavale', max_length=300)), ('music_credits', models.CharField( blank=True, default='', help_text= 'Example of correct format: Greg Joy and Neil Cross', max_length=300)), ('video_embed', models.CharField(blank=True, default='', max_length=300, verbose_name='Youtube URL')), ('audio_mp3', models.FileField(blank=True, upload_to='')), ('status', models.CharField(choices=[('d', 'Draft'), ('p', 'Published'), ('v', 'Previewed')], default='d', max_length=1)), ('pub_date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date published')), ('slug', models.SlugField(max_length=120, unique=True)), ('old_KiW_slug', models.CharField( blank=True, help_text= 'For old episodes (that were on Flask): need to fill this in so that the old links on social media and stuff still work', max_length=200)), ('author', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='first_author', to='content.Author')), ('classification', models.ManyToManyField(blank=True, to='content.Classification')), ], ), migrations.CreateModel( name='FlashSeminar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='le title', max_length=100, unique=True)), ('event_date', models.DateTimeField(default=django.utils.timezone.now)), ('event_location', models.CharField(default='somewhere', max_length=400)), ('description', ckeditor.fields.RichTextField(default='a flash seminar!')), ('status', models.CharField(choices=[('d', 'Draft'), ('p', 'Published'), ('v', 'Previewed')], default='d', max_length=1)), ('slug', models.SlugField(default='le slug', max_length=120, unique=True)), ('episode', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Episode')), ], ), migrations.CreateModel( name='Season', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='Season title', max_length=100)), ('abstract', ckeditor.fields.RichTextField( default='Description of the season')), ('image', models.ImageField( blank=True, null=True, upload_to=content.models.seasons_image_directory_path, verbose_name='Season image')), ('pub_date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date published')), ], ), migrations.AddField( model_name='episode', name='season', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Season'), ), migrations.AddField( model_name='episode', name='second_author', field=models.ForeignKey( blank=True, help_text='A second author is optional', null=True, on_delete=django.db.models.deletion.CASCADE, related_name='second_author', to='content.Author'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Content', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=20, unique=True)), ('scene_name', models.CharField(max_length=50, unique=True)), ], ), migrations.CreateModel( name='ContentVersion', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('version_number', models.CharField( max_length=8, unique=True, validators=[content.models.version_number_validator])), ('download_url', models.URLField(unique=True)), ('update_time', models.DateTimeField(auto_now_add=True)), ('content', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='versions', to='content.Content')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='LauncherVersion', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('version_number', models.CharField( max_length=8, unique=True, validators=[content.models.version_number_validator])), ('download_url', models.URLField(unique=True)), ('update_time', models.DateTimeField(auto_now_add=True)), ], options={ 'abstract': False, }, ), migrations.AddField( model_name='contentversion', name='minimum_launcher_version', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='content.LauncherVersion'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name="Articles", fields=[ ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), ("name", models.CharField(max_length=20, verbose_name="文章名称")), ("content", models.CharField(blank=True, max_length=300, verbose_name="文章简介")), ("url", models.URLField(max_length=100, null=True, verbose_name="url路径")), ("register_time", models.DateTimeField(default=django.utils.timezone.now, verbose_name="上传时间")), ], options={ "ordering": ("register_time", ), }, ), migrations.CreateModel( name="Consultant", fields=[ ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), ("name", models.CharField(max_length=20, verbose_name="咨询师姓名")), ("content", models.CharField(blank=True, max_length=300, verbose_name="咨询师简介")), ("telephone", models.CharField(blank=True, max_length=11, verbose_name="咨询师电话")), ("QQ", models.CharField(blank=True, max_length=16, verbose_name="咨询师QQ")), ("register_time", models.DateTimeField(default=django.utils.timezone.now, verbose_name="注册时间")), ], options={ "ordering": ("register_time", ), }, ), migrations.CreateModel( name="Lecture", fields=[ ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), ("name", models.CharField(max_length=20, verbose_name="讲座名称")), ("content", models.CharField(blank=True, max_length=300, verbose_name="讲座简介")), ("time", models.DateTimeField(default=django.utils.timezone.now, verbose_name="开始时间")), ], options={ "ordering": ("time", ), }, ), migrations.CreateModel( name="PsyTest", fields=[ ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), ("name", models.CharField(max_length=20, verbose_name="心理测试名称")), ("content", models.CharField(blank=True, max_length=300, verbose_name="测试简介")), ("url", models.URLField(max_length=100, null=True, verbose_name="url路径")), ("register_time", models.DateTimeField(default=django.utils.timezone.now, verbose_name="上传时间")), ], options={ "ordering": ("register_time", ), }, ), migrations.CreateModel( name="Resource", fields=[ ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), ("name", models.CharField(max_length=20, verbose_name="资源名称")), ("content", models.CharField(blank=True, max_length=300, verbose_name="资源简介")), ("resource", models.FileField( help_text="直接上传到服务器,名称中不要有中文", upload_to=content.models.Resource.resource_path, verbose_name="资源上传")), ("register_time", models.DateTimeField(default=django.utils.timezone.now, verbose_name="上传时间")), ], options={ "ordering": ("register_time", ), }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('wagtailimages', '0019_delete_filter'), ('taggit', '0002_auto_20150616_2121'), ('wagtailcore', '0040_page_draft_title'), ] operations = [ migrations.CreateModel( name='ArticleIndex', fields=[ ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('description', models.TextField(blank=True, max_length=160, verbose_name='Описание')), ('color', colorfield.fields.ColorField(blank=True, default='#FF0000', max_length=18, verbose_name='Цвет рубрики')), ('body', wagtail.wagtailcore.fields.StreamField((('group_1', wagtail.wagtailcore.blocks.StructBlock((('slider', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 1 (большой)')), ('standart', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 2 (стандартный)'))), icon='cog', label='Большой материал со стандартным', template='content/groups/group_1.html')), ('group_2', wagtail.wagtailcore.blocks.StructBlock((('little_1', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 1 (маленький)')), ('little_2', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 2 (маленький)')), ('cube', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 3 (куб)')), ('standart', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 4 (стандартный)'))), icon='cog', label='Два маленьких, куб и стандартный', template='content/groups/group_2.html')), ('group_3', wagtail.wagtailcore.blocks.StructBlock((('standart', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 1 (стандартный)')), ('big', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 2 (большой)'))), icon='cog', label='Стандартный и большой', template='content/groups/group_3.html')), ('group_4', wagtail.wagtailcore.blocks.StructBlock((('standart', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 1 (стандартный)')), ('little_1', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 2 (маленький)')), ('little_2', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 3 (маленький)')), ('cube', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница', required=False)), ('tag', content.blocks.TagBlock(label='Тег', required=False)), ('is_random', wagtail.wagtailcore.blocks.BooleanBlock(label='Золотой фонд', required=False))), label='Материал 4 (куб)'))), icon='cog', label='Стандартный, два маленьких и куб', template='content/groups/group_4.html'))), blank=True, null=True)), ('preview_picture', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.Image', verbose_name='Основная иллюстрация')), ], options={ 'verbose_name': 'Рубрика', 'verbose_name_plural': 'Рубрики', }, bases=('wagtailcore.page',), ), migrations.CreateModel( name='ArticleIndexTag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content_object', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='tagged_items', to='content.ArticleIndex')), ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='content_articleindextag_items', to='taggit.Tag')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='ArticlePage', fields=[ ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('full_title', models.CharField(blank=True, help_text='До 150 символов', max_length=150, null=True, verbose_name='Полный заголовок')), ('short_lead', models.TextField(help_text='До 160 символов', max_length=160, verbose_name='Короткий лид')), ('full_lead', models.TextField(blank=True, help_text='До 250 символов', max_length=250, null=True, verbose_name='Полный лид')), ('count_view', models.PositiveIntegerField(default=0)), ('allowed_comments', models.BooleanField(default=True, verbose_name='Включить комментарии')), ('body', wagtail.wagtailcore.fields.StreamField((('h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock((('image', wagtail.wagtailimages.blocks.ImageChooserBlock(label='Фотография')), ('caption', wagtail.wagtailcore.blocks.RichTextBlock(label='Подпись'))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('quote_no_image', wagtail.wagtailcore.blocks.StructBlock((('quote', wagtail.wagtailcore.blocks.TextBlock(label='Цитата')),))), ('quote', wagtail.wagtailcore.blocks.StructBlock((('quote', wagtail.wagtailcore.blocks.TextBlock(label='Цитата')), ('author', wagtail.wagtailcore.blocks.CharBlock(label='Автор')), ('attribution', wagtail.wagtailcore.blocks.TextBlock(label='Подпись автора')), ('photo', wagtail.wagtailimages.blocks.ImageChooserBlock(label='Фотография'))))), ('read_also', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница')),))), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock(label='Параграф', template='content/stream_fields/paragraph.html')), ('gallery', wagtail.wagtailcore.blocks.ListBlock(content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock(wagtail.wagtailcore.blocks.TextBlock(label='Подпись'), template='content/stream_fields/notes.html'))))), ('show_in_news', models.BooleanField(default=False, verbose_name='Отображать в новостях')), ('old_id', models.IntegerField(blank=True, null=True)), ], options={ 'verbose_name': 'Статья', 'verbose_name_plural': 'Статьи', }, bases=(wagtail.contrib.wagtailroutablepage.models.RoutablePageMixin, 'wagtailcore.page'), ), migrations.CreateModel( name='ArticlePageTag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content_object', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='tagged_items', to='content.ArticlePage')), ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='content_articlepagetag_items', to='taggit.Tag')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Author', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('first_name', models.CharField(max_length=150, verbose_name='Имя')), ('last_name', models.CharField(max_length=150, verbose_name='Фамилия')), ('photo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.Image', verbose_name='Фото')), ], options={ 'verbose_name': 'Автор', 'verbose_name_plural': 'Авторы', }, ), migrations.CreateModel( name='BlogCategory', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('live', models.BooleanField(default=True, verbose_name='Опубликовано')), ('title', models.CharField(max_length=255, verbose_name='Заголовок')), ('slug', models.CharField(max_length=255, verbose_name='Символьный код')), ('description', models.TextField(blank=True, null=True, verbose_name='Описание')), ('preview_picture', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.Image', verbose_name='Основная иллюстрация')), ], options={ 'verbose_name': 'Блог', 'verbose_name_plural': 'Блоги', }, ), migrations.CreateModel( name='BlogIndex', fields=[ ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('intro', wagtail.wagtailcore.fields.RichTextField(blank=True)), ], options={ 'verbose_name': 'Блог', 'verbose_name_plural': 'Блоги', }, bases=('wagtailcore.page',), ), migrations.CreateModel( name='BlogPage', fields=[ ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('full_title', models.CharField(blank=True, help_text='До 150 символов', max_length=150, null=True, verbose_name='Полный заголовок')), ('short_lead', models.TextField(help_text='До 160 символов', max_length=160, verbose_name='Короткий лид')), ('full_lead', models.TextField(blank=True, help_text='До 250 символов', max_length=250, null=True, verbose_name='Полный лид')), ('count_view', models.PositiveIntegerField(default=0)), ('allowed_comments', models.BooleanField(default=True, verbose_name='Включить комментарии')), ('body', wagtail.wagtailcore.fields.StreamField((('h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock((('image', wagtail.wagtailimages.blocks.ImageChooserBlock(label='Фотография')), ('caption', wagtail.wagtailcore.blocks.RichTextBlock(label='Подпись'))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('quote_no_image', wagtail.wagtailcore.blocks.StructBlock((('quote', wagtail.wagtailcore.blocks.TextBlock(label='Цитата')),))), ('quote', wagtail.wagtailcore.blocks.StructBlock((('quote', wagtail.wagtailcore.blocks.TextBlock(label='Цитата')), ('author', wagtail.wagtailcore.blocks.CharBlock(label='Автор')), ('attribution', wagtail.wagtailcore.blocks.TextBlock(label='Подпись автора')), ('photo', wagtail.wagtailimages.blocks.ImageChooserBlock(label='Фотография'))))), ('read_also', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница')),))), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock(label='Параграф', template='content/stream_fields/paragraph.html')), ('gallery', wagtail.wagtailcore.blocks.ListBlock(content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock(wagtail.wagtailcore.blocks.TextBlock(label='Подпись'), template='content/stream_fields/notes.html'))))), ('show_in_news', models.BooleanField(default=False, verbose_name='Отображать в новостях')), ('old_id', models.IntegerField(blank=True, null=True)), ('authors', modelcluster.fields.ParentalManyToManyField(blank=True, related_name='blogs', to='content.Author', verbose_name='Автор')), ('category', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='posts', to='content.BlogCategory', verbose_name='Блог')), ('preview_picture', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.Image', verbose_name='Основная иллюстрация')), ], options={ 'verbose_name': 'Пост', 'verbose_name_plural': 'Посты', }, bases=(wagtail.contrib.wagtailroutablepage.models.RoutablePageMixin, 'wagtailcore.page'), ), migrations.CreateModel( name='BlogPageTag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content_object', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='tagged_items', to='content.BlogPage')), ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='content_blogpagetag_items', to='taggit.Tag')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='NewsPage', fields=[ ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('full_title', models.CharField(blank=True, help_text='До 150 символов', max_length=150, null=True, verbose_name='Полный заголовок')), ('short_lead', models.TextField(help_text='До 160 символов', max_length=160, verbose_name='Короткий лид')), ('full_lead', models.TextField(blank=True, help_text='До 250 символов', max_length=250, null=True, verbose_name='Полный лид')), ('count_view', models.PositiveIntegerField(default=0)), ('allowed_comments', models.BooleanField(default=True, verbose_name='Включить комментарии')), ('body', wagtail.wagtailcore.fields.StreamField((('h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock((('image', wagtail.wagtailimages.blocks.ImageChooserBlock(label='Фотография')), ('caption', wagtail.wagtailcore.blocks.RichTextBlock(label='Подпись'))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('quote_no_image', wagtail.wagtailcore.blocks.StructBlock((('quote', wagtail.wagtailcore.blocks.TextBlock(label='Цитата')),))), ('quote', wagtail.wagtailcore.blocks.StructBlock((('quote', wagtail.wagtailcore.blocks.TextBlock(label='Цитата')), ('author', wagtail.wagtailcore.blocks.CharBlock(label='Автор')), ('attribution', wagtail.wagtailcore.blocks.TextBlock(label='Подпись автора')), ('photo', wagtail.wagtailimages.blocks.ImageChooserBlock(label='Фотография'))))), ('read_also', wagtail.wagtailcore.blocks.StructBlock((('page', wagtail.wagtailcore.blocks.PageChooserBlock(label='Страница')),))), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock(label='Параграф', template='content/stream_fields/paragraph.html')), ('gallery', wagtail.wagtailcore.blocks.ListBlock(content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock(wagtail.wagtailcore.blocks.TextBlock(label='Подпись'), template='content/stream_fields/notes.html'))))), ('show_in_news', models.BooleanField(default=False, verbose_name='Отображать в новостях')), ('old_id', models.IntegerField(blank=True, null=True)), ('authors', modelcluster.fields.ParentalManyToManyField(blank=True, related_name='news', to='content.Author', verbose_name='Авторы')), ('preview_picture', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.Image', verbose_name='Основная иллюстрация')), ('rubric', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='news', to='content.ArticleIndex', verbose_name='Рубрика')), ], options={ 'verbose_name': 'Новость', 'verbose_name_plural': 'Новости', }, bases=(wagtail.contrib.wagtailroutablepage.models.RoutablePageMixin, 'wagtailcore.page'), ), migrations.CreateModel( name='NewsPageTag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content_object', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='tagged_items', to='content.NewsPage')), ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='content_newspagetag_items', to='taggit.Tag')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='TagIndex', fields=[ ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ], options={ 'verbose_name': 'Тег', 'verbose_name_plural': 'Теги', }, bases=('wagtailcore.page',), ), migrations.AddField( model_name='newspage', name='tags', field=modelcluster.contrib.taggit.ClusterTaggableManager(blank=True, help_text='A comma-separated list of tags.', through='content.NewsPageTag', to='taggit.Tag', verbose_name='Тэги'), ), migrations.AddField( model_name='blogpage', name='tags', field=modelcluster.contrib.taggit.ClusterTaggableManager(blank=True, help_text='A comma-separated list of tags.', through='content.BlogPageTag', to='taggit.Tag', verbose_name='Тэги'), ), migrations.AddField( model_name='articlepage', name='authors', field=modelcluster.fields.ParentalManyToManyField(blank=True, related_name='articles', to='content.Author', verbose_name='Авторы'), ), migrations.AddField( model_name='articlepage', name='preview_picture', field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.Image', verbose_name='Основная иллюстрация'), ), migrations.AddField( model_name='articlepage', name='rubric', field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='articles', to='content.ArticleIndex', verbose_name='Рубрика'), ), migrations.AddField( model_name='articlepage', name='tags', field=modelcluster.contrib.taggit.ClusterTaggableManager(blank=True, help_text='A comma-separated list of tags.', through='content.ArticlePageTag', to='taggit.Tag', verbose_name='Тэги'), ), migrations.AddField( model_name='articleindex', name='tags', field=modelcluster.contrib.taggit.ClusterTaggableManager(blank=True, help_text='A comma-separated list of tags.', through='content.ArticleIndexTag', to='taggit.Tag', verbose_name='Тэги'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Tag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100, unique=True)), ], ), migrations.CreateModel( name='Word', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('text', models.CharField(max_length=500)), ('description', models.CharField(blank=True, max_length=2000, null=True)), ('language', models.CharField(choices=[ ('ab', 'Abkhaz'), ('aa', 'Afar'), ('af', 'Afrikaans'), ('ak', 'Akan'), ('sq', 'Albanian'), ('am', 'Amharic'), ('ar', 'Arabic'), ('an', 'Aragonese'), ('hy', 'Armenian'), ('as', 'Assamese'), ('av', 'Avaric'), ('ae', 'Avestan'), ('ay', 'Aymara'), ('az', 'Azerbaijani'), ('bm', 'Bambara'), ('ba', 'Bashkir'), ('eu', 'Basque'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('bh', 'Bihari'), ('bi', 'Bislama'), ('bs', 'Bosnian'), ('br', 'Breton'), ('bg', 'Bulgarian'), ('my', 'Burmese'), ('ca', 'Catalan; Valencian'), ('ch', 'Chamorro'), ('ce', 'Chechen'), ('ny', 'Chichewa; Chewa; Nyanja'), ('zh', 'Chinese'), ('cv', 'Chuvash'), ('kw', 'Cornish'), ('co', 'Corsican'), ('cr', 'Cree'), ('hr', 'Croatian'), ('cs', 'Czech'), ('da', 'Danish'), ('dv', 'Divehi; Dhivehi; Maldivian;'), ('nl', 'Dutch'), ('en', 'English'), ('eo', 'Esperanto'), ('et', 'Estonian'), ('ee', 'Ewe'), ('fo', 'Faroese'), ('fj', 'Fijian'), ('fi', 'Finnish'), ('fr', 'French'), ('ff', 'Fula; Fulah; Pulaar; Pular'), ('gl', 'Galician'), ('ka', 'Georgian'), ('de', 'German'), ('el', 'Greek, Modern'), ('gn', 'Guaraní'), ('gu', 'Gujarati'), ('ht', 'Haitian; Haitian Creole'), ('ha', 'Hausa'), ('he', 'Hebrew (modern),'), ('hz', 'Herero'), ('hi', 'Hindi'), ('ho', 'Hiri Motu'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('ie', 'Interlingue'), ('ga', 'Irish'), ('ig', 'Igbo'), ('ik', 'Inupiaq'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('iu', 'Inuktitut'), ('ja', 'Japanese'), ('jv', 'Javanese'), ('kl', 'Kalaallisut, Greenlandic'), ('kn', 'Kannada'), ('kr', 'Kanuri'), ('ks', 'Kashmiri'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('ki', 'Kikuyu, Gikuyu'), ('rw', 'Kinyarwanda'), ('ky', 'Kirghiz, Kyrgyz'), ('kv', 'Komi'), ('kg', 'Kongo'), ('ko', 'Korean'), ('ku', 'Kurdish'), ('kj', 'Kwanyama, Kuanyama'), ('la', 'Latin'), ('lb', 'Luxembourgish, Letzeburgesch'), ('lg', 'Luganda'), ('li', 'Limburgish, Limburgan, Limburger'), ('ln', 'Lingala'), ('lo', 'Lao'), ('lt', 'Lithuanian'), ('lu', 'Luba-Katanga'), ('lv', 'Latvian'), ('gv', 'Manx'), ('mk', 'Macedonian'), ('mg', 'Malagasy'), ('ms', 'Malay'), ('ml', 'Malayalam'), ('mt', 'Maltese'), ('mi', 'Māori'), ('mr', 'Marathi (Marāṭhī),'), ('mh', 'Marshallese'), ('mn', 'Mongolian'), ('na', 'Nauru'), ('nv', 'Navajo, Navaho'), ('nb', 'Norwegian Bokmål'), ('nd', 'North Ndebele'), ('ne', 'Nepali'), ('ng', 'Ndonga'), ('nn', 'Norwegian Nynorsk'), ('no', 'Norwegian'), ('ii', 'Nuosu'), ('nr', 'South Ndebele'), ('oc', 'Occitan'), ('oj', 'Ojibwe, Ojibwa'), ('cu', 'Old Church Slavonic, Church Slavic, Church Slavonic, Old Bulgarian, Old Slavonic' ), ('om', 'Oromo'), ('or', 'Oriya'), ('os', 'Ossetian, Ossetic'), ('pa', 'Panjabi, Punjabi'), ('pi', 'Pāli'), ('fa', 'Persian'), ('pl', 'Polish'), ('ps', 'Pashto, Pushto'), ('pt', 'Portuguese'), ('qu', 'Quechua'), ('rm', 'Romansh'), ('rn', 'Kirundi'), ('ro', 'Romanian, Moldavian, Moldovan'), ('ru', 'Russian'), ('sa', 'Sanskrit (Saṁskṛta),'), ('sc', 'Sardinian'), ('sd', 'Sindhi'), ('se', 'Northern Sami'), ('sm', 'Samoan'), ('sg', 'Sango'), ('sr', 'Serbian'), ('gd', 'Scottish Gaelic; Gaelic'), ('sn', 'Shona'), ('si', 'Sinhala, Sinhalese'), ('sk', 'Slovak'), ('sl', 'Slovene'), ('so', 'Somali'), ('st', 'Southern Sotho'), ('es', 'Spanish; Castilian'), ('su', 'Sundanese'), ('sw', 'Swahili'), ('ss', 'Swati'), ('sv', 'Swedish'), ('ta', 'Tamil'), ('te', 'Telugu'), ('tg', 'Tajik'), ('th', 'Thai'), ('ti', 'Tigrinya'), ('bo', 'Tibetan Standard, Tibetan, Central'), ('tk', 'Turkmen'), ('tl', 'Tagalog'), ('tn', 'Tswana'), ('to', 'Tonga (Tonga Islands),'), ('tr', 'Turkish'), ('ts', 'Tsonga'), ('tt', 'Tatar'), ('tw', 'Twi'), ('ty', 'Tahitian'), ('ug', 'Uighur, Uyghur'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('uz', 'Uzbek'), ('ve', 'Venda'), ('vi', 'Vietnamese'), ('vo', 'Volapük'), ('wa', 'Walloon'), ('cy', 'Welsh'), ('wo', 'Wolof'), ('fy', 'Western Frisian'), ('xh', 'Xhosa'), ('yi', 'Yiddish'), ('yo', 'Yoruba'), ('za', 'Zhuang, Chuang') ], max_length=5)), ('random', models.CharField(default=content.models.generate_random, max_length=10)), ('created_at', models.DateTimeField(auto_now_add=True, null=True)), ('modified_at', models.DateTimeField(auto_now=True)), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('contenttypes', '0002_remove_content_type_name'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Content', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.CharField(default='UNPROCESSED', editable=False, max_length=40)), ('privacy', models.CharField(choices=[('PRIVATE', 'Private'), ('RESTRICTED', 'Group'), ('PUBLIC', 'Public')], default='PRIVATE', max_length=40, verbose_name='Privacy')), ('uid', models.CharField(db_index=True, default=content.models.get_uid, editable=False, max_length=40, unique=True)), ('originalfilename', models.CharField(editable=False, max_length=256, null=True, verbose_name='Original file name')), ('filesize', models.IntegerField(editable=False, null=True)), ('filetime', models.DateTimeField(blank=True, editable=False, null=True)), ('mimetype', models.CharField(editable=False, max_length=200, null=True)), ('file', models.FileField( storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/data/content' )), upload_to=content.models.upload_split_by_1000)), ('preview', models.ImageField( blank=True, editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/preview' )), upload_to=content.models.upload_split_by_1000)), ('md5', models.CharField(editable=False, max_length=32, null=True)), ('sha1', models.CharField(editable=False, max_length=40, null=True)), ('linktype', models.CharField(blank=True, max_length=500)), ('point', django.contrib.gis.db.models.fields.PointField(blank=True, geography=True, null=True, srid=4326)), ('point_geom', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=4326)), ('title', models.CharField(blank=True, max_length=200, verbose_name='Title')), ('caption', models.TextField(blank=True, verbose_name='Caption')), ('author', models.CharField(blank=True, max_length=200, verbose_name='Author')), ('keywords', models.CharField(blank=True, max_length=500, verbose_name='Keywords')), ('place', models.CharField(blank=True, max_length=500, verbose_name='Place')), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(auto_now=True)), ('opens', models.DateTimeField(blank=True, null=True)), ('expires', models.DateTimeField(blank=True, null=True)), ('object_id', models.PositiveIntegerField(blank=True, null=True)), ('content_type', models.ForeignKey( blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to='contenttypes.contenttype')), ], ), migrations.CreateModel( name='Mail', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.CharField(choices=[('UNPROCESSED', 'UNPROCESSED'), ('PROCESSED', 'PROCESSED'), ('DUPLICATE', 'DUPLICATE'), ('FAILED', 'FAILED')], default='UNPROCESSED', max_length=40)), ('filesize', models.IntegerField(editable=False, null=True)), ('file', models.FileField( editable=False, storage=django.core.files.storage.FileSystemStorage( location= '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/mail/content' ), upload_to=content.models.upload_split_by_1000)), ('md5', models.CharField(db_index=True, editable=False, max_length=32)), ('sha1', models.CharField(db_index=True, editable=False, max_length=40)), ('created', models.DateTimeField(auto_now_add=True)), ('processed', models.DateTimeField(null=True)), ], ), migrations.CreateModel( name='Audio', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('duration', models.FloatField(blank=True, null=True)), ('bitrate', models.FloatField(blank=True, editable=False, null=True)), ], ), migrations.CreateModel( name='Image', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('width', models.IntegerField(blank=True, editable=False, null=True)), ('height', models.IntegerField(blank=True, editable=False, null=True)), ('rotate', models.IntegerField(blank=True, choices=[(0, 0), (90, 90), (180, 180), (270, 270)], default=0, null=True)), ('thumbnail', models.ImageField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/preview' )), upload_to=content.models.upload_split_by_1000)), ], ), migrations.CreateModel( name='Uploadinfo', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('sessionid', models.CharField(blank=True, editable=False, max_length=200)), ('ip', models.GenericIPAddressField(blank=True, editable=False, null=True)), ('useragent', models.CharField(blank=True, editable=False, max_length=500)), ('info', models.TextField(blank=True)), ], ), migrations.CreateModel( name='Video', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('width', models.IntegerField(blank=True, editable=False, null=True)), ('height', models.IntegerField(blank=True, editable=False, null=True)), ('duration', models.FloatField(blank=True, editable=False, null=True)), ('bitrate', models.CharField(blank=True, editable=False, max_length=256, null=True)), ('thumbnail', models.ImageField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/preview' )), upload_to=content.models.upload_split_by_1000)), ], ), migrations.CreateModel( name='Videoinstance', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mimetype', models.CharField(editable=False, max_length=200)), ('filesize', models.IntegerField(blank=True, editable=False, null=True)), ('duration', models.FloatField(blank=True, editable=False, null=True)), ('bitrate', models.FloatField(blank=True, editable=False, null=True)), ('extension', models.CharField(editable=False, max_length=16)), ('width', models.IntegerField(blank=True, editable=False, null=True)), ('height', models.IntegerField(blank=True, editable=False, null=True)), ('framerate', models.FloatField(blank=True, editable=False, null=True)), ('file', models.FileField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/video' )), upload_to=content.models.upload_split_by_1000)), ('command', models.CharField(editable=False, max_length=2000)), ('created', models.DateTimeField(auto_now_add=True)), ('content', models.ForeignKey(editable=False, on_delete=django.db.models.deletion.CASCADE, related_name='videoinstances', to='content.content')), ], ), migrations.CreateModel( name='Group', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('slug', models.SlugField(max_length=100)), ('description', models.TextField()), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(auto_now=True)), ('users', models.ManyToManyField(blank=True, related_name='contentgroups', to=settings.AUTH_USER_MODEL)), ], ), migrations.AddField( model_name='content', name='group', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='content.group'), ), migrations.AddField( model_name='content', name='parent', field=models.ForeignKey( blank=True, editable=False, null=True, on_delete=django.db.models.deletion.SET_NULL, to='content.content'), ), migrations.AddField( model_name='content', name='peers', field=models.ManyToManyField(blank=True, editable=False, to='content.content'), ), migrations.AddField( model_name='content', name='user', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL), ), migrations.CreateModel( name='Audioinstance', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mimetype', models.CharField(editable=False, max_length=200)), ('filesize', models.IntegerField(blank=True, editable=False, null=True)), ('duration', models.FloatField(blank=True, editable=False, null=True)), ('bitrate', models.FloatField(blank=True, editable=False, null=True)), ('extension', models.CharField(editable=False, max_length=16)), ('file', models.FileField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/audio' )), upload_to=content.models.upload_split_by_1000)), ('command', models.CharField(editable=False, max_length=2000)), ('created', models.DateTimeField(auto_now_add=True)), ('content', models.ForeignKey(editable=False, on_delete=django.db.models.deletion.CASCADE, related_name='audioinstances', to='content.content')), ], ), ]