Clean up breadcrumbs for device component views

This commit is contained in:
Jeremy Stretch 2020-12-02 16:25:38 -05:00
parent a80f13243e
commit 96ce9122f4
2 changed files with 42 additions and 1 deletions

View File

@ -1334,6 +1334,11 @@ class ConsolePortListView(generic.ObjectListView):
class ConsolePortView(generic.ObjectView): class ConsolePortView(generic.ObjectView):
queryset = ConsolePort.objects.all() queryset = ConsolePort.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_consoleports'
}
class ConsolePortCreateView(generic.ComponentCreateView): class ConsolePortCreateView(generic.ComponentCreateView):
queryset = ConsolePort.objects.all() queryset = ConsolePort.objects.all()
@ -1394,6 +1399,11 @@ class ConsoleServerPortListView(generic.ObjectListView):
class ConsoleServerPortView(generic.ObjectView): class ConsoleServerPortView(generic.ObjectView):
queryset = ConsoleServerPort.objects.all() queryset = ConsoleServerPort.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_consoleserverports'
}
class ConsoleServerPortCreateView(generic.ComponentCreateView): class ConsoleServerPortCreateView(generic.ComponentCreateView):
queryset = ConsoleServerPort.objects.all() queryset = ConsoleServerPort.objects.all()
@ -1454,6 +1464,11 @@ class PowerPortListView(generic.ObjectListView):
class PowerPortView(generic.ObjectView): class PowerPortView(generic.ObjectView):
queryset = PowerPort.objects.all() queryset = PowerPort.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_powerports'
}
class PowerPortCreateView(generic.ComponentCreateView): class PowerPortCreateView(generic.ComponentCreateView):
queryset = PowerPort.objects.all() queryset = PowerPort.objects.all()
@ -1514,6 +1529,11 @@ class PowerOutletListView(generic.ObjectListView):
class PowerOutletView(generic.ObjectView): class PowerOutletView(generic.ObjectView):
queryset = PowerOutlet.objects.all() queryset = PowerOutlet.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_poweroutlets'
}
class PowerOutletCreateView(generic.ComponentCreateView): class PowerOutletCreateView(generic.ComponentCreateView):
queryset = PowerOutlet.objects.all() queryset = PowerOutlet.objects.all()
@ -1598,6 +1618,7 @@ class InterfaceView(generic.ObjectView):
return { return {
'ipaddress_table': ipaddress_table, 'ipaddress_table': ipaddress_table,
'vlan_table': vlan_table, 'vlan_table': vlan_table,
'breadcrumb_url': 'dcim:device_interfaces'
} }
@ -1660,6 +1681,11 @@ class FrontPortListView(generic.ObjectListView):
class FrontPortView(generic.ObjectView): class FrontPortView(generic.ObjectView):
queryset = FrontPort.objects.all() queryset = FrontPort.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_frontports'
}
class FrontPortCreateView(generic.ComponentCreateView): class FrontPortCreateView(generic.ComponentCreateView):
queryset = FrontPort.objects.all() queryset = FrontPort.objects.all()
@ -1720,6 +1746,11 @@ class RearPortListView(generic.ObjectListView):
class RearPortView(generic.ObjectView): class RearPortView(generic.ObjectView):
queryset = RearPort.objects.all() queryset = RearPort.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_rearports'
}
class RearPortCreateView(generic.ComponentCreateView): class RearPortCreateView(generic.ComponentCreateView):
queryset = RearPort.objects.all() queryset = RearPort.objects.all()
@ -1780,6 +1811,11 @@ class DeviceBayListView(generic.ObjectListView):
class DeviceBayView(generic.ObjectView): class DeviceBayView(generic.ObjectView):
queryset = DeviceBay.objects.all() queryset = DeviceBay.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_devicebays'
}
class DeviceBayCreateView(generic.ComponentCreateView): class DeviceBayCreateView(generic.ComponentCreateView):
queryset = DeviceBay.objects.all() queryset = DeviceBay.objects.all()
@ -1901,6 +1937,11 @@ class InventoryItemListView(generic.ObjectListView):
class InventoryItemView(generic.ObjectView): class InventoryItemView(generic.ObjectView):
queryset = InventoryItem.objects.all() queryset = InventoryItem.objects.all()
def get_extra_context(self, request, instance):
return {
'breadcrumb_url': 'dcim:device_inventory'
}
class InventoryItemEditView(generic.ObjectEditView): class InventoryItemEditView(generic.ObjectEditView):
queryset = InventoryItem.objects.all() queryset = InventoryItem.objects.all()

View File

@ -9,7 +9,7 @@
<ol class="breadcrumb"> <ol class="breadcrumb">
<li><a href="{% url 'dcim:device_list' %}">Devices</a></li> <li><a href="{% url 'dcim:device_list' %}">Devices</a></li>
<li><a href="{{ object.device.get_absolute_url }}">{{ object.device }}</a></li> <li><a href="{{ object.device.get_absolute_url }}">{{ object.device }}</a></li>
<li><a href="{% url object|viewname:"list" %}?device_id={{ object.device.pk }}">{{ object|meta:"verbose_name_plural"|bettertitle }}</a></li> <li><a href="{% url breadcrumb_url pk=object.device.pk %}">{{ object|meta:"verbose_name_plural"|bettertitle }}</a></li>
<li>{{ object }}</li> <li>{{ object }}</li>
</ol> </ol>
</div> </div>