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

Closes #8804: Include module type count on manufacturer view

jeremystretch 3 лет назад
Родитель
Сommit
18c9ee2f9d
2 измененных файлов с 12 добавлено и 2 удалено
  1. 6 2
      netbox/dcim/views.py
  2. 6 0
      netbox/templates/dcim/manufacturer.html

+ 6 - 2
netbox/dcim/views.py

@@ -735,21 +735,25 @@ class ManufacturerView(generic.ObjectView):
     queryset = Manufacturer.objects.all()
     queryset = Manufacturer.objects.all()
 
 
     def get_extra_context(self, request, instance):
     def get_extra_context(self, request, instance):
-        devicetypes = DeviceType.objects.restrict(request.user, 'view').filter(
+        device_types = DeviceType.objects.restrict(request.user, 'view').filter(
             manufacturer=instance
             manufacturer=instance
         ).annotate(
         ).annotate(
             instance_count=count_related(Device, 'device_type')
             instance_count=count_related(Device, 'device_type')
         )
         )
+        module_types = ModuleType.objects.restrict(request.user, 'view').filter(
+            manufacturer=instance
+        )
         inventory_items = InventoryItem.objects.restrict(request.user, 'view').filter(
         inventory_items = InventoryItem.objects.restrict(request.user, 'view').filter(
             manufacturer=instance
             manufacturer=instance
         )
         )
 
 
-        devicetypes_table = tables.DeviceTypeTable(devicetypes, exclude=('manufacturer',))
+        devicetypes_table = tables.DeviceTypeTable(device_types, exclude=('manufacturer',))
         devicetypes_table.configure(request)
         devicetypes_table.configure(request)
 
 
         return {
         return {
             'devicetypes_table': devicetypes_table,
             'devicetypes_table': devicetypes_table,
             'inventory_item_count': inventory_items.count(),
             'inventory_item_count': inventory_items.count(),
+            'module_type_count': module_types.count(),
         }
         }
 
 
 
 

+ 6 - 0
netbox/templates/dcim/manufacturer.html

@@ -34,6 +34,12 @@
               <a href="{% url 'dcim:devicetype_list' %}?manufacturer_id={{ object.pk }}">{{ devicetypes_table.rows|length }}</a>
               <a href="{% url 'dcim:devicetype_list' %}?manufacturer_id={{ object.pk }}">{{ devicetypes_table.rows|length }}</a>
             </td>
             </td>
           </tr>
           </tr>
+          <tr>
+            <th scope="row">Module types</th>
+            <td>
+              <a href="{% url 'dcim:moduletype_list' %}?manufacturer_id={{ object.pk }}">{{ module_type_count }}</a>
+            </td>
+          </tr>
           <tr>
           <tr>
             <th scope="row">Inventory Items</th>
             <th scope="row">Inventory Items</th>
             <td>
             <td>