From 5bd4fc862db2d0d885047e0ee8d0d28d233d85d0 Mon Sep 17 00:00:00 2001 From: Brian Tiemann Date: Wed, 21 Aug 2024 15:38:31 -0400 Subject: [PATCH] Add a Devices column with device_count hyperlink (via count_related) to SiteListView --- netbox/dcim/tables/sites.py | 5 +++++ netbox/dcim/views.py | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/netbox/dcim/tables/sites.py b/netbox/dcim/tables/sites.py index e179ec43a..77844f086 100644 --- a/netbox/dcim/tables/sites.py +++ b/netbox/dcim/tables/sites.py @@ -99,6 +99,11 @@ class SiteTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable): url_params={'site_id': 'pk'}, verbose_name=_('ASN Count') ) + device_count = columns.LinkedCountColumn( + viewname='dcim:device_list', + url_params={'site_id': 'pk'}, + verbose_name=_('Devices') + ) comments = columns.MarkdownColumn( verbose_name=_('Comments'), ) diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index b18ecdd5b..b4af52ad5 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -380,7 +380,9 @@ class SiteGroupContactsView(ObjectContactsView): # class SiteListView(generic.ObjectListView): - queryset = Site.objects.all() + queryset = Site.objects.annotate( + device_count=count_related(Device, 'site') + ) filterset = filtersets.SiteFilterSet filterset_form = forms.SiteFilterForm table = tables.SiteTable