diff --git a/netbox/extras/dashboard/widgets.py b/netbox/extras/dashboard/widgets.py index df41cd34b..d23919d9e 100644 --- a/netbox/extras/dashboard/widgets.py +++ b/netbox/extras/dashboard/widgets.py @@ -183,10 +183,13 @@ class ObjectCountsWidget(DashboardWidget): for model in get_models_from_content_types(self.config['models']): permission = get_permission_for_model(model, 'view') if request.user.has_perm(permission): - url = reverse(get_viewname(model, 'list')) + try: + url = reverse(get_viewname(model, 'list')) + except NoReverseMatch: + url = None qs = model.objects.restrict(request.user, 'view') # Apply any specified filters - if filters := self.config.get('filters'): + if url and (filters := self.config.get('filters')): params = dict_to_querydict(filters) filterset = getattr(resolve(url).func.view_class, 'filterset', None) qs = filterset(params, qs).qs diff --git a/netbox/templates/extras/dashboard/widgets/objectcounts.html b/netbox/templates/extras/dashboard/widgets/objectcounts.html index 6110aa4c0..70b71059f 100644 --- a/netbox/templates/extras/dashboard/widgets/objectcounts.html +++ b/netbox/templates/extras/dashboard/widgets/objectcounts.html @@ -3,7 +3,7 @@ {% if counts %}
{% for model, count, url in counts %} - +
{{ model|meta:"verbose_name_plural"|bettertitle }} {% if count is None %}