0035_virtualmachine_interface_count.py 920 B

12345678910111213141516171819202122232425262728293031
  1. from django.db import migrations
  2. from django.db.models import Count
  3. import utilities.fields
  4. from utilities.counters import update_counts
  5. def populate_virtualmachine_counts(apps, schema_editor):
  6. VirtualMachine = apps.get_model('virtualization', 'VirtualMachine')
  7. update_counts(VirtualMachine, 'interface_count', 'interfaces')
  8. class Migration(migrations.Migration):
  9. dependencies = [
  10. ('virtualization', '0034_standardize_description_comments'),
  11. ]
  12. operations = [
  13. migrations.AddField(
  14. model_name='virtualmachine',
  15. name='interface_count',
  16. field=utilities.fields.CounterCacheField(
  17. default=0, to_field='virtual_machine', to_model='virtualization.VMInterface'
  18. ),
  19. ),
  20. migrations.RunPython(
  21. code=populate_virtualmachine_counts,
  22. reverse_code=migrations.RunPython.noop
  23. ),
  24. ]