1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Create a separate migration for each field

This commit is contained in:
Jeremy Stretch
2019-11-18 21:14:43 -05:00
parent 4f0d82ac16
commit fbd12e1887
4 changed files with 41 additions and 29 deletions

View File

@ -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
) ),
] ]

View File

@ -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
),
] ]

View File

@ -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
),
]

View File

@ -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
), ),
] ]