Sfoglia il codice sorgente

Move breadcrumb generation to template

jeremystretch 4 anni fa
parent
commit
83496c66d1

+ 0 - 41
netbox/dcim/views.py

@@ -1587,11 +1587,6 @@ class ConsolePortListView(generic.ObjectListView):
 class ConsolePortView(generic.ObjectView):
     queryset = ConsolePort.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_consoleports'
-        }
-
 
 class ConsolePortCreateView(generic.ComponentCreateView):
     queryset = ConsolePort.objects.all()
@@ -1652,11 +1647,6 @@ class ConsoleServerPortListView(generic.ObjectListView):
 class ConsoleServerPortView(generic.ObjectView):
     queryset = ConsoleServerPort.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_consoleserverports'
-        }
-
 
 class ConsoleServerPortCreateView(generic.ComponentCreateView):
     queryset = ConsoleServerPort.objects.all()
@@ -1717,11 +1707,6 @@ class PowerPortListView(generic.ObjectListView):
 class PowerPortView(generic.ObjectView):
     queryset = PowerPort.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_powerports'
-        }
-
 
 class PowerPortCreateView(generic.ComponentCreateView):
     queryset = PowerPort.objects.all()
@@ -1782,11 +1767,6 @@ class PowerOutletListView(generic.ObjectListView):
 class PowerOutletView(generic.ObjectView):
     queryset = PowerOutlet.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_poweroutlets'
-        }
-
 
 class PowerOutletCreateView(generic.ComponentCreateView):
     queryset = PowerOutlet.objects.all()
@@ -1880,7 +1860,6 @@ class InterfaceView(generic.ObjectView):
             'ipaddress_table': ipaddress_table,
             'child_interfaces_table': child_interfaces_tables,
             'vlan_table': vlan_table,
-            'breadcrumb_url': 'dcim:device_interfaces'
         }
 
 
@@ -1943,11 +1922,6 @@ class FrontPortListView(generic.ObjectListView):
 class FrontPortView(generic.ObjectView):
     queryset = FrontPort.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_frontports'
-        }
-
 
 class FrontPortCreateView(generic.ComponentCreateView):
     queryset = FrontPort.objects.all()
@@ -2008,11 +1982,6 @@ class RearPortListView(generic.ObjectListView):
 class RearPortView(generic.ObjectView):
     queryset = RearPort.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_rearports'
-        }
-
 
 class RearPortCreateView(generic.ComponentCreateView):
     queryset = RearPort.objects.all()
@@ -2073,11 +2042,6 @@ class DeviceBayListView(generic.ObjectListView):
 class DeviceBayView(generic.ObjectView):
     queryset = DeviceBay.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_devicebays'
-        }
-
 
 class DeviceBayCreateView(generic.ComponentCreateView):
     queryset = DeviceBay.objects.all()
@@ -2199,11 +2163,6 @@ class InventoryItemListView(generic.ObjectListView):
 class InventoryItemView(generic.ObjectView):
     queryset = InventoryItem.objects.all()
 
-    def get_extra_context(self, request, instance):
-        return {
-            'breadcrumb_url': 'dcim:device_inventory'
-        }
-
 
 class InventoryItemEditView(generic.ObjectEditView):
     queryset = InventoryItem.objects.all()

+ 6 - 0
netbox/templates/dcim/consoleport.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_consoleports' pk=object.device.pk %}">Console Ports</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">

+ 6 - 0
netbox/templates/dcim/consoleserverport.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_consoleserverports' pk=object.device.pk %}">Console Server Ports</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">

+ 0 - 4
netbox/templates/dcim/device_component.html

@@ -9,8 +9,4 @@
 {% block breadcrumbs %}
   <li><a href="{% url 'dcim:device_list' %}">Devices</a></li>
   <li><a href="{{ object.device.get_absolute_url }}">{{ object.device }}</a></li>
-  {% if breadcrumb_url %}
-    <li><a href="{% url breadcrumb_url pk=object.device.pk %}">{{ object|meta:"verbose_name_plural"|bettertitle }}</a></li>
-  {% endif %}
-  <li>{{ object }}</li>
 {% endblock %}

+ 6 - 0
netbox/templates/dcim/devicebay.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_devicebays' pk=object.device.pk %}">Device Bays</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">

+ 6 - 0
netbox/templates/dcim/frontport.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_frontports' pk=object.device.pk %}">Front Ports</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">

+ 6 - 0
netbox/templates/dcim/interface.html

@@ -3,6 +3,12 @@
 {% load plugins %}
 {% load render_table from django_tables2 %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_interfaces' pk=object.device.pk %}">Interfaces</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block buttons %}
   {% if perms.dcim.add_interface and not object.is_virtual %}
     <a href="{% url 'dcim:interface_add' %}?device={{ object.device.pk }}&parent={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-success">

+ 6 - 0
netbox/templates/dcim/inventoryitem.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_inventory' pk=object.device.pk %}">Inventory Items</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">

+ 1 - 1
netbox/templates/dcim/location.html

@@ -3,7 +3,7 @@
 {% load plugins %}
 
 {% block breadcrumbs %}
-  <li><a href="{% url 'dcim:location_list' %}">Location</a></li>
+  <li><a href="{% url 'dcim:location_list' %}">Locations</a></li>
   {% for location in object.get_ancestors %}
     <li><a href="{{ location.get_absolute_url }}">{{ location }}</a></li>
   {% endfor %}

+ 6 - 0
netbox/templates/dcim/poweroutlet.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_poweroutlets' pk=object.device.pk %}">Power Outlets</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">

+ 6 - 0
netbox/templates/dcim/powerport.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_powerports' pk=object.device.pk %}">Power Ports</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">

+ 6 - 0
netbox/templates/dcim/rearport.html

@@ -2,6 +2,12 @@
 {% load helpers %}
 {% load plugins %}
 
+{% block breadcrumbs %}
+  {{ block.super }}
+  <li><a href="{% url 'dcim:device_rearports' pk=object.device.pk %}">Rear Ports</a></li>
+  <li>{{ object }}</li>
+{% endblock %}
+
 {% block content %}
     <div class="row">
         <div class="col-md-6">