From 7bed48f5fee3180dce82de2623cc4ddc30ff3091 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Tue, 13 Nov 2018 14:18:00 -0500 Subject: [PATCH] Expanded device interfaces display to include MTU, MAC address, and tags --- netbox/dcim/views.py | 6 ++-- netbox/templates/dcim/device.html | 1 + netbox/templates/dcim/inc/interface.html | 38 +++++++++++++++++++----- 3 files changed, 35 insertions(+), 10 deletions(-) diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index eb7f71a25..91b2a25a4 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -858,8 +858,10 @@ class DeviceView(View): device.device_type.interface_ordering ).select_related( 'connected_as_a__interface_b__device', 'connected_as_b__interface_a__device', - 'circuit_termination__circuit' - ).prefetch_related('ip_addresses') + 'circuit_termination__circuit__provider' + ).prefetch_related( + 'tags', 'ip_addresses' + ) # Device bays device_bays = natsorted( diff --git a/netbox/templates/dcim/device.html b/netbox/templates/dcim/device.html index 61fb649c9..faa946f2e 100644 --- a/netbox/templates/dcim/device.html +++ b/netbox/templates/dcim/device.html @@ -525,6 +525,7 @@ Name LAG Description + MTU Mode Connection diff --git a/netbox/templates/dcim/inc/interface.html b/netbox/templates/dcim/inc/interface.html index 57390e582..8a36e74ed 100644 --- a/netbox/templates/dcim/inc/interface.html +++ b/netbox/templates/dcim/inc/interface.html @@ -1,4 +1,5 @@ - +{% load helpers %} + {# Checkbox #} {% if perms.dcim.change_interface or perms.dcim.delete_interface %} @@ -7,32 +8,53 @@ {% endif %} - {# Icon and name #} + {# Icon/name/MAC #} {{ iface }} + {% if iface.mac_address %} +
{{ iface.mac_address }} + {% endif %} {# LAG #} {% if iface.lag %} - {{ iface.lag }} + {{ iface.lag }} {% endif %} - {# Description #} - {{ iface.description|default:"—" }} + {# Description/tags #} + + {% if iface.description %} + {{ iface.description }}
+ {% endif %} + {% for tag in iface.tags.all %} + {% tag tag %} + {% empty %} + {% if not iface.description %}—{% endif %} + {% endfor %} + + + {# MTU #} + {{ iface.mtu|default:"—" }} {# 802.1Q mode #} - {{ iface.get_mode_display }} + {{ iface.get_mode_display|default:"—" }} {# Connection or type #} {% if iface.is_lag %} LAG interface
- {{ iface.member_interfaces.all|join:", "|default:"No members" }} + + {% for member in iface.member_interfaces.all %} + {{ member }}{% if not forloop.last %}, {% endif %} + {% empty %} + No members + {% endfor %} + {% elif iface.is_virtual %} Virtual interface @@ -138,7 +160,7 @@ {% endif %} {# IP addresses table #} - +