From 3670933396327c70054da11247cc0afb4d5dbc13 Mon Sep 17 00:00:00 2001 From: Morten Brekkevold Date: Thu, 27 Aug 2020 12:21:29 +0200 Subject: [PATCH] Display a more helpful error when room is missing Fixes #2178 --- python/nav/web/navlets/pdu.py | 7 ++++++- python/nav/web/templates/navlets/pdu_view.html | 14 ++++++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/python/nav/web/navlets/pdu.py b/python/nav/web/navlets/pdu.py index e77a42992f..9ddd7a9002 100644 --- a/python/nav/web/navlets/pdu.py +++ b/python/nav/web/navlets/pdu.py @@ -48,7 +48,12 @@ def get_context_data_view(self, context): if not roomid: return context - room = Room.objects.get(pk=roomid) + try: + room = Room.objects.get(pk=roomid) + except Room.DoesNotExist: + context["doesnotexist"] = roomid + return context + pdus = room.netbox_set.filter(category='POWER').filter( sensor__internal_name__startswith='rPDULoadStatusLoad' ).prefetch_related('sensor_set').distinct() diff --git a/python/nav/web/templates/navlets/pdu_view.html b/python/nav/web/templates/navlets/pdu_view.html index 1ba59b48c6..bd22a29d2d 100644 --- a/python/nav/web/templates/navlets/pdu_view.html +++ b/python/nav/web/templates/navlets/pdu_view.html @@ -44,10 +44,16 @@ {% else %} -
- Choose which room to show pdu status for -
- + {% if doesnotexist %} +
+ The room {{ doesnotexist }} no longer exists. + Choose a new room to show pdu status for. +
+ {% else %} +
+ Choose which room to show pdu status for +
+ {% endif %}