mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Include WirelessLAN attached interfaces
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
from dcim.models import Interface
|
||||
from netbox.views import generic
|
||||
from utilities.tables import paginate_table
|
||||
from utilities.utils import count_related
|
||||
from . import filtersets, forms, tables
|
||||
from .models import *
|
||||
|
||||
@@ -81,7 +83,9 @@ class WirelessLANGroupBulkDeleteView(generic.BulkDeleteView):
|
||||
#
|
||||
|
||||
class WirelessLANListView(generic.ObjectListView):
|
||||
queryset = WirelessLAN.objects.all()
|
||||
queryset = WirelessLAN.objects.annotate(
|
||||
interface_count=count_related(Interface, 'wireless_lans')
|
||||
)
|
||||
filterset = filtersets.WirelessLANFilterSet
|
||||
filterset_form = forms.WirelessLANFilterForm
|
||||
table = tables.WirelessLANTable
|
||||
@@ -90,6 +94,17 @@ class WirelessLANListView(generic.ObjectListView):
|
||||
class WirelessLANView(generic.ObjectView):
|
||||
queryset = WirelessLAN.objects.all()
|
||||
|
||||
def get_extra_context(self, request, instance):
|
||||
attached_interfaces = Interface.objects.restrict(request.user, 'view').filter(
|
||||
wireless_lans=instance
|
||||
)
|
||||
interfaces_table = tables.WirelessLANInterfacesTable(attached_interfaces)
|
||||
paginate_table(interfaces_table, request)
|
||||
|
||||
return {
|
||||
'interfaces_table': interfaces_table,
|
||||
}
|
||||
|
||||
|
||||
class WirelessLANEditView(generic.ObjectEditView):
|
||||
queryset = WirelessLAN.objects.all()
|
||||
|
||||
Reference in New Issue
Block a user