Fixes #6312: Interface device filter should return all virtual chassis interfaces only if device is master

This commit is contained in:
jeremystretch
2021-05-07 09:47:32 -04:00
parent d6a0cbb1a0
commit e9b21aaf86
4 changed files with 8 additions and 9 deletions

View File

@@ -1407,7 +1407,7 @@ class DeviceInterfacesView(generic.ObjectView):
template_name = 'dcim/device/interfaces.html'
def get_extra_context(self, request, instance):
interfaces = instance.vc_interfaces(if_master=True).restrict(request.user, 'view').prefetch_related(
interfaces = instance.vc_interfaces().restrict(request.user, 'view').prefetch_related(
Prefetch('ip_addresses', queryset=IPAddress.objects.restrict(request.user)),
Prefetch('member_interfaces', queryset=Interface.objects.restrict(request.user)),
'lag', 'cable', '_path__destination', 'tags',
@@ -1529,7 +1529,7 @@ class DeviceLLDPNeighborsView(generic.ObjectView):
template_name = 'dcim/device/lldp_neighbors.html'
def get_extra_context(self, request, instance):
interfaces = instance.vc_interfaces(if_master=True).restrict(request.user, 'view').prefetch_related(
interfaces = instance.vc_interfaces().restrict(request.user, 'view').prefetch_related(
'_path__destination'
).exclude(
type__in=NONCONNECTABLE_IFACE_TYPES