Просмотр исходного кода

Standardize linking to related objects in tables

jeremystretch 3 лет назад
Родитель
Сommit
48e5b395b2

+ 3 - 1
netbox/circuits/tables/circuits.py

@@ -28,7 +28,9 @@ class CircuitTypeTable(NetBoxTable):
     tags = columns.TagColumn(
         url_name='circuits:circuittype_list'
     )
-    circuit_count = tables.Column(
+    circuit_count = columns.LinkedCountColumn(
+        viewname='circuits:circuit_list',
+        url_params={'type_id': 'pk'},
         verbose_name='Circuits'
     )
 

+ 3 - 0
netbox/dcim/tables/devices.py

@@ -107,6 +107,9 @@ class PlatformTable(NetBoxTable):
     name = tables.Column(
         linkify=True
     )
+    manufacturer = tables.Column(
+        linkify=True
+    )
     device_count = columns.LinkedCountColumn(
         viewname='dcim:device_list',
         url_params={'platform_id': 'pk'},

+ 0 - 1
netbox/dcim/tables/devicetypes.py

@@ -49,7 +49,6 @@ class ManufacturerTable(ContactsColumnMixin, NetBoxTable):
         url_params={'manufacturer_id': 'pk'},
         verbose_name='Platforms'
     )
-    slug = tables.Column()
     tags = columns.TagColumn(
         url_name='dcim:manufacturer_list'
     )

+ 5 - 1
netbox/dcim/tables/racks.py

@@ -19,7 +19,11 @@ __all__ = (
 
 class RackRoleTable(NetBoxTable):
     name = tables.Column(linkify=True)
-    rack_count = tables.Column(verbose_name='Racks')
+    rack_count = columns.LinkedCountColumn(
+        viewname='dcim:rack_list',
+        url_params={'role_id': 'pk'},
+        verbose_name='Racks'
+    )
     color = columns.ColorColumn()
     tags = columns.TagColumn(
         url_name='dcim:rackrole_list'

+ 8 - 2
netbox/dcim/views.py

@@ -843,7 +843,10 @@ class ManufacturerBulkImportView(generic.BulkImportView):
 
 class ManufacturerBulkEditView(generic.BulkEditView):
     queryset = Manufacturer.objects.annotate(
-        devicetype_count=count_related(DeviceType, 'manufacturer')
+        devicetype_count=count_related(DeviceType, 'manufacturer'),
+        moduletype_count=count_related(ModuleType, 'manufacturer'),
+        inventoryitem_count=count_related(InventoryItem, 'manufacturer'),
+        platform_count=count_related(Platform, 'manufacturer')
     )
     filterset = filtersets.ManufacturerFilterSet
     table = tables.ManufacturerTable
@@ -852,7 +855,10 @@ class ManufacturerBulkEditView(generic.BulkEditView):
 
 class ManufacturerBulkDeleteView(generic.BulkDeleteView):
     queryset = Manufacturer.objects.annotate(
-        devicetype_count=count_related(DeviceType, 'manufacturer')
+        devicetype_count=count_related(DeviceType, 'manufacturer'),
+        moduletype_count=count_related(ModuleType, 'manufacturer'),
+        inventoryitem_count=count_related(InventoryItem, 'manufacturer'),
+        platform_count=count_related(Platform, 'manufacturer')
     )
     table = tables.ManufacturerTable