Просмотр исходного кода

Create a separate migration for each field

Jeremy Stretch 6 лет назад
Родитель
Сommit
fbd12e1887

+ 2 - 1
netbox/circuits/migrations/0016_circuit_choicefields_to_slugs.py → netbox/circuits/migrations/0016_circuit_status_to_slug.py

@@ -18,6 +18,7 @@ def circuit_status_to_slug(apps, schema_editor):
 
 
 
 
 class Migration(migrations.Migration):
 class Migration(migrations.Migration):
+    atomic = False
 
 
     dependencies = [
     dependencies = [
         ('circuits', '0015_custom_tag_models'),
         ('circuits', '0015_custom_tag_models'),
@@ -31,5 +32,5 @@ class Migration(migrations.Migration):
         ),
         ),
         migrations.RunPython(
         migrations.RunPython(
             code=circuit_status_to_slug
             code=circuit_status_to_slug
-        )
+        ),
     ]
     ]

+ 1 - 24
netbox/dcim/migrations/0078_rack_choicefields_to_slugs.py → netbox/dcim/migrations/0078_rack_type_to_slug.py

@@ -8,14 +8,6 @@ RACK_TYPE_CHOICES = (
     (1100, 'wall-cabinet'),
     (1100, 'wall-cabinet'),
 )
 )
 
 
-RACK_STATUS_CHOICES = (
-    (0, 'reserved'),
-    (1, 'available'),
-    (2, 'planned'),
-    (3, 'active'),
-    (4, 'deprecated'),
-)
-
 
 
 def rack_type_to_slug(apps, schema_editor):
 def rack_type_to_slug(apps, schema_editor):
     Rack = apps.get_model('dcim', 'Rack')
     Rack = apps.get_model('dcim', 'Rack')
@@ -23,20 +15,14 @@ def rack_type_to_slug(apps, schema_editor):
         Rack.objects.filter(type=str(id)).update(type=slug)
         Rack.objects.filter(type=str(id)).update(type=slug)
 
 
 
 
-def rack_status_to_slug(apps, schema_editor):
-    Rack = apps.get_model('dcim', 'Rack')
-    for id, slug in RACK_STATUS_CHOICES:
-        Rack.objects.filter(status=str(id)).update(status=slug)
-
-
 class Migration(migrations.Migration):
 class Migration(migrations.Migration):
+    atomic = False
 
 
     dependencies = [
     dependencies = [
         ('dcim', '0077_power_types'),
         ('dcim', '0077_power_types'),
     ]
     ]
 
 
     operations = [
     operations = [
-        # Rack.type
         migrations.AlterField(
         migrations.AlterField(
             model_name='rack',
             model_name='rack',
             name='type',
             name='type',
@@ -45,13 +31,4 @@ class Migration(migrations.Migration):
         migrations.RunPython(
         migrations.RunPython(
             code=rack_type_to_slug
             code=rack_type_to_slug
         ),
         ),
-        # Rack.status
-        migrations.AlterField(
-            model_name='rack',
-            name='status',
-            field=models.CharField(blank=True, default='active', max_length=50),
-        ),
-        migrations.RunPython(
-            code=rack_status_to_slug
-        ),
     ]
     ]

+ 34 - 0
netbox/dcim/migrations/0079_rack_status_to_slug.py

@@ -0,0 +1,34 @@
+from django.db import migrations, models
+
+RACK_STATUS_CHOICES = (
+    (0, 'reserved'),
+    (1, 'available'),
+    (2, 'planned'),
+    (3, 'active'),
+    (4, 'deprecated'),
+)
+
+
+def rack_status_to_slug(apps, schema_editor):
+    Rack = apps.get_model('dcim', 'Rack')
+    for id, slug in RACK_STATUS_CHOICES:
+        Rack.objects.filter(status=str(id)).update(status=slug)
+
+
+class Migration(migrations.Migration):
+    atomic = False
+
+    dependencies = [
+        ('dcim', '0078_rack_type_to_slug'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='rack',
+            name='status',
+            field=models.CharField(blank=True, default='active', max_length=50),
+        ),
+        migrations.RunPython(
+            code=rack_status_to_slug
+        ),
+    ]

+ 4 - 4
netbox/dcim/migrations/0079_device_choicefields_to_slugs.py → netbox/dcim/migrations/0080_device_face_to_slug.py

@@ -6,26 +6,26 @@ DEVICE_FACE_CHOICES = (
 )
 )
 
 
 
 
-def rack_type_to_slug(apps, schema_editor):
+def device_face_to_slug(apps, schema_editor):
     Device = apps.get_model('dcim', 'Device')
     Device = apps.get_model('dcim', 'Device')
     for id, slug in DEVICE_FACE_CHOICES:
     for id, slug in DEVICE_FACE_CHOICES:
         Device.objects.filter(face=str(id)).update(face=slug)
         Device.objects.filter(face=str(id)).update(face=slug)
 
 
 
 
 class Migration(migrations.Migration):
 class Migration(migrations.Migration):
+    atomic = False
 
 
     dependencies = [
     dependencies = [
-        ('dcim', '0078_rack_choicefields_to_slugs'),
+        ('dcim', '0079_rack_status_to_slug'),
     ]
     ]
 
 
     operations = [
     operations = [
-        # Device.face
         migrations.AlterField(
         migrations.AlterField(
             model_name='device',
             model_name='device',
             name='face',
             name='face',
             field=models.CharField(blank=True, default='', max_length=50),
             field=models.CharField(blank=True, default='', max_length=50),
         ),
         ),
         migrations.RunPython(
         migrations.RunPython(
-            code=rack_type_to_slug
+            code=device_face_to_slug
         ),
         ),
     ]
     ]