Arthur 1 месяц назад
Родитель
Сommit
46f9a12a87
1 измененных файлов с 26 добавлено и 0 удалено
  1. 26 0
      netbox/dcim/migrations/0226_modulebay_rebuild_tree.py

+ 26 - 0
netbox/dcim/migrations/0226_modulebay_rebuild_tree.py

@@ -0,0 +1,26 @@
+from django.db import migrations
+import mptt
+import mptt.managers
+
+
+def rebuild_mptt(apps, schema_editor):
+    """
+    Rebuild the MPTT tree for ModuleBay to apply new ordering by 'name'
+    instead of 'module'.
+    """
+    manager = mptt.managers.TreeManager()
+    ModuleBay = apps.get_model('dcim', 'ModuleBay')
+    manager.model = ModuleBay
+    mptt.register(ModuleBay)
+    manager.contribute_to_class(ModuleBay, 'objects')
+    manager.rebuild()
+
+
+class Migration(migrations.Migration):
+    dependencies = [
+        ('dcim', '0225_gfk_indexes'),
+    ]
+
+    operations = [
+        migrations.RunPython(code=rebuild_mptt, reverse_code=migrations.RunPython.noop),
+    ]