from django.db import migrations from content.node_split import split_long_nodes def split(apps, schema_editor): """ جزیره‌های بلندِ (بیش از ۷ درس) پایه‌های سوم تا دوازدهم را به جزیره‌های حداکثر ۶ درسی می‌شکند (`content/node_split.py`). روی دیتابیسِ خالی (تست، سرورِ تازه) هیچ کاری نمی‌کند؛ آنجا `seed_content` از فایلِ بازساخته‌شده می‌سازد. """ Unit = apps.get_model('content', 'Unit') stats = split_long_nodes( Node=apps.get_model('content', 'Node'), Lesson=apps.get_model('content', 'Lesson'), UserNodeCompletion=apps.get_model('content', 'UserNodeCompletion'), NodeProgress=apps.get_model('content', 'NodeProgress'), units=Unit.objects.filter(grade__number__in=range(3, 13)).order_by('id'), ) if stats['nodes_split']: print(f'\n split_long_nodes: {stats}') class Migration(migrations.Migration): dependencies = [('content', '0017_calculus_units')] operations = [migrations.RunPython(split, migrations.RunPython.noop)]