1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Closes #4956: Include inventory items on primary device view

This commit is contained in:
Jeremy Stretch
2020-09-18 11:35:15 -04:00
parent 52dc80209c
commit 584b076886
6 changed files with 415 additions and 432 deletions

View File

@@ -1050,6 +1050,11 @@ class DeviceView(ObjectView):
'installed_device__device_type__manufacturer',
)
# Inventory items
inventoryitems = InventoryItem.objects.restrict(request.user, 'view').filter(
device=device
).prefetch_related('manufacturer')
# Services
services = Service.objects.restrict(request.user, 'view').filter(device=device)
@@ -1072,9 +1077,10 @@ class DeviceView(ObjectView):
'powerports': powerports,
'poweroutlets': poweroutlets,
'interfaces': interfaces,
'devicebays': devicebays,
'frontports': frontports,
'rearports': rearports,
'devicebays': devicebays,
'inventoryitems': inventoryitems,
'services': services,
'secrets': secrets,
'vc_members': vc_members,
@@ -1082,23 +1088,6 @@ class DeviceView(ObjectView):
})
class DeviceInventoryView(ObjectView):
queryset = Device.objects.all()
def get(self, request, pk):
device = get_object_or_404(self.queryset, pk=pk)
inventory_items = InventoryItem.objects.restrict(request.user, 'view').filter(
device=device
).prefetch_related('manufacturer')
return render(request, 'dcim/device_inventory.html', {
'device': device,
'inventory_items': inventory_items,
'active_tab': 'inventory',
})
class DeviceStatusView(ObjectView):
additional_permissions = ['dcim.napalm_read_device']
queryset = Device.objects.all()