# Generated by Django 3.2.7 on 2025-03-16 23:50 from django.db import migrations, models import django.db.models.deletion import mptt.fields class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Hadis', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('number', models.PositiveIntegerField(unique=True, verbose_name='number')), ('title', models.CharField(max_length=355, verbose_name='title')), ('text', models.TextField(verbose_name='text')), ('translation', models.TextField(blank=True, default='', verbose_name='translation')), ('status', models.BooleanField(default=True, verbose_name='visibility')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='created at')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='updated at')), ], options={ 'verbose_name': 'hadis', 'verbose_name_plural': 'hadises', }, ), migrations.CreateModel( name='HadisTag', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=355, verbose_name='title')), ], ), migrations.CreateModel( name='HadisTagRelation', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('priority', models.IntegerField(default=0, verbose_name='priority')), ('hadis', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='hadis.hadis', verbose_name='hadis')), ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='hadis.hadistag', verbose_name='tag')), ], options={ 'verbose_name': 'hadis tag relation', 'verbose_name_plural': 'hadis tag relations', 'unique_together': {('tag', 'hadis')}, }, ), migrations.CreateModel( name='HadisCategory', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=512, verbose_name='name')), ('is_active', models.BooleanField(default=True, verbose_name='is active')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='created at')), ('source_type', models.CharField(blank=True, choices=[('shia', 'Shia Sources'), ('sunni', 'Sunni Sources')], default='shia', max_length=10, verbose_name='Source Type')), ('category_type', models.CharField(blank=True, choices=[('quran', 'Quran'), ('hadith', 'Hadith')], max_length=10, null=True, verbose_name='Category Content Type')), ('title', models.CharField(max_length=355, verbose_name='title')), ('order', models.IntegerField(default=0, verbose_name='order')), ('lft', models.PositiveIntegerField(editable=False)), ('rght', models.PositiveIntegerField(editable=False)), ('tree_id', models.PositiveIntegerField(db_index=True, editable=False)), ('level', models.PositiveIntegerField(editable=False)), ('parent', mptt.fields.TreeForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='children', to='hadis.hadiscategory')), ], options={ 'verbose_name': 'Hadis Category', 'verbose_name_plural': 'Hadis Categories', 'ordering': ('order',), }, ), migrations.AddField( model_name='hadis', name='category', field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='hadis.hadiscategory', verbose_name='category'), ), migrations.AddField( model_name='hadis', name='tags', field=models.ManyToManyField(related_name='hadises', through='hadis.HadisTagRelation', to='hadis.HadisTag', verbose_name='tags'), ), ]