2023-07-25 20:39:05 +07:00
|
|
|
from django.db import migrations
|
|
|
|
from django.db.models import Count
|
|
|
|
|
|
|
|
import utilities.fields
|
2023-09-18 06:59:26 -07:00
|
|
|
from utilities.counters import update_counts
|
2023-07-25 20:39:05 +07:00
|
|
|
|
|
|
|
|
|
|
|
def populate_virtualmachine_counts(apps, schema_editor):
|
|
|
|
VirtualMachine = apps.get_model('virtualization', 'VirtualMachine')
|
|
|
|
|
2023-09-18 06:59:26 -07:00
|
|
|
update_counts(VirtualMachine, 'interface_count', 'interfaces')
|
2023-07-25 20:39:05 +07:00
|
|
|
|
|
|
|
|
|
|
|
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, to_field='virtual_machine', to_model='virtualization.VMInterface'
|
|
|
|
),
|
|
|
|
),
|
|
|
|
migrations.RunPython(
|
|
|
|
code=populate_virtualmachine_counts,
|
|
|
|
reverse_code=migrations.RunPython.noop
|
|
|
|
),
|
|
|
|
]
|