apps.py 1005 B

12345678910111213141516171819202122232425262728293031323334
  1. from django.apps import AppConfig
  2. from netbox import denormalized
  3. class DCIMConfig(AppConfig):
  4. name = "dcim"
  5. verbose_name = "DCIM"
  6. def ready(self):
  7. from netbox.models.features import register_models
  8. from utilities.counters import connect_counters
  9. from . import signals, search
  10. from .models import CableTermination, Device, DeviceType, VirtualChassis
  11. # Register models
  12. register_models(*self.get_models())
  13. # Register denormalized fields
  14. denormalized.register(CableTermination, '_device', {
  15. '_rack': 'rack',
  16. '_location': 'location',
  17. '_site': 'site',
  18. })
  19. denormalized.register(CableTermination, '_rack', {
  20. '_location': 'location',
  21. '_site': 'site',
  22. })
  23. denormalized.register(CableTermination, '_location', {
  24. '_site': 'site',
  25. })
  26. # Register counters
  27. connect_counters(Device, DeviceType, VirtualChassis)