# Generated by Django 6.0 on 2025-12-25 11:35 import django.db.models.deletion from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ ('quiz', '0010_add_matching_question_fields'), ] operations = [ migrations.CreateModel( name='File', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(help_text='Display name or filename', max_length=500)), ('path', models.CharField(blank=True, help_text='Path relative to content root', max_length=1000)), ('mime_type', models.CharField(help_text='MIME type of the entity (e.g. application/pdf, application/x-folder)', max_length=100)), ('text', models.TextField(blank=True, help_text='Text content, OCR, or embedded query')), ('external_url', models.URLField(blank=True, help_text='External link (e.g. YouTube)')), ('metadata', models.JSONField(blank=True, default=dict, help_text='Frontmatter (created_at, user, etc.)')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('parent', models.ForeignKey(blank=True, help_text='Parent folder or parent document (for sidecars/sub-entries)', null=True, on_delete=django.db.models.deletion.CASCADE, related_name='children', to='quiz.file')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='files', to='quiz.quizuser')), ], options={ 'verbose_name': 'File', 'verbose_name_plural': 'Files', }, ), ]