diff --git a/netbox/virtualization/migrations/0035_virtualmachine__interface_count.py b/netbox/virtualization/migrations/0035_virtualmachine__interface_count.py new file mode 100644 index 000000000..c74b6c077 --- /dev/null +++ b/netbox/virtualization/migrations/0035_virtualmachine__interface_count.py @@ -0,0 +1,30 @@ +# Generated by Django 4.1.8 on 2023-05-16 21:20 + +from django.db import migrations +import utilities.fields + + +def populate_virtualmachine_counts(apps, schema_editor): + VirtualMachine = apps.get_model('virtualization', 'VirtualMachine') + + for vm in VirtualMachine.objects.all(): + vm._interface_count = vm.interfaces.count() + vm.save() + + +class Migration(migrations.Migration): + dependencies = [ + ('virtualization', '0034_standardize_description_comments'), + ] + + operations = [ + migrations.AddField( + model_name='virtualmachine', + name='_interface_count', + field=utilities.fields.CounterCacheField(default=0), + ), + migrations.RunPython( + code=populate_virtualmachine_counts, + reverse_code=migrations.RunPython.noop + ), + ]