From fc7f88d2a2d9972e99fe56112f83e325bba0b550 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Wed, 18 Jan 2017 11:55:48 -0500 Subject: [PATCH] Regression fix: order_naturally() must come first in the queryset definition --- netbox/dcim/views.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index 548627cd5..fa433259a 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -601,16 +601,18 @@ def device(request, pk): power_outlets = natsorted( PowerOutlet.objects.filter(device=device).select_related('connected_port'), key=attrgetter('name') ) - interfaces = Interface.objects.filter(device=device, mgmt_only=False).select_related( - 'connected_as_a__interface_b__device', - 'connected_as_b__interface_a__device', - 'circuit_termination__circuit', - ).order_naturally(device.device_type.interface_ordering) - mgmt_interfaces = Interface.objects.filter(device=device, mgmt_only=True).select_related( - 'connected_as_a__interface_b__device', - 'connected_as_b__interface_a__device', - 'circuit_termination__circuit', - ).order_naturally(device.device_type.interface_ordering) + interfaces = Interface.objects.order_naturally(device.device_type.interface_ordering)\ + .filter(device=device, mgmt_only=False).select_related( + 'connected_as_a__interface_b__device', + 'connected_as_b__interface_a__device', + 'circuit_termination__circuit', + ) + mgmt_interfaces = Interface.objects.order_naturally(device.device_type.interface_ordering)\ + .filter(device=device, mgmt_only=True).select_related( + 'connected_as_a__interface_b__device', + 'connected_as_b__interface_a__device', + 'circuit_termination__circuit', + ) device_bays = natsorted( DeviceBay.objects.filter(device=device).select_related('installed_device__device_type__manufacturer'), key=attrgetter('name')