diff --git a/netbox/dcim/tables.py b/netbox/dcim/tables.py index 087473b11..b0872b843 100644 --- a/netbox/dcim/tables.py +++ b/netbox/dcim/tables.py @@ -536,3 +536,16 @@ class InterfaceImportTable(BaseTable): class Meta(BaseTable.Meta): model = Interface fields = ('device', 'name', 'form_factor','mac_address', 'description') + + +class InterfaceListTable(BaseTable): + device = tables.LinkColumn('dcim:device', accessor=Accessor('interface.device'), + args=[Accessor('interface.device.pk')], verbose_name='Device') + name = tables.Column(verbose_name='Interface') + form_factor = tables.Column(verbose_name='Form Factor') + mac_address = tables.Column(verbose_name='MAC Address') + description = tables.Column(verbose_name='Description') + + class Meta(BaseTable.Meta): + model = Interface + fields = ('device', 'name', 'form_factor','mac_address', 'description') diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index d79e8b035..3f12071e8 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -1557,10 +1557,10 @@ class InterfaceBulkImportView(PermissionRequiredMixin, BulkImportView): class InterfaceListView(ObjectListView): queryset = Interface.objects.select_related('device', 'interface__device')\ - .order_by('device__name', 'interface__name', 'interface__description') + .order_by('device', 'interface__name', 'interface__description') filter = filters.InterfaceFilter filter_form = forms.InterfaceFilterForm - table = tables.InterfaceTable + table = tables.InterfaceListTable template_name = 'dcim/interface_list.html'