mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-15 03:32:53 -06:00
#7854: Misc cleanup
This commit is contained in:
parent
8809fc949b
commit
13d39a28ce
@ -680,11 +680,14 @@ class VirtualDeviceContextSerializer(NetBoxModelSerializer):
|
|||||||
primary_ip4 = NestedIPAddressSerializer(required=False, allow_null=True)
|
primary_ip4 = NestedIPAddressSerializer(required=False, allow_null=True)
|
||||||
primary_ip6 = NestedIPAddressSerializer(required=False, allow_null=True)
|
primary_ip6 = NestedIPAddressSerializer(required=False, allow_null=True)
|
||||||
|
|
||||||
|
# Related object counts
|
||||||
|
interface_count = serializers.IntegerField(read_only=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = VirtualDeviceContext
|
model = VirtualDeviceContext
|
||||||
fields = [
|
fields = [
|
||||||
'id', 'url', 'display', 'name', 'device', 'identifier', 'tenant', 'primary_ip', 'primary_ip4',
|
'id', 'url', 'display', 'name', 'device', 'identifier', 'tenant', 'primary_ip', 'primary_ip4',
|
||||||
'primary_ip6', 'status', 'comments', 'tags', 'custom_fields', 'created', 'last_updated',
|
'primary_ip6', 'status', 'comments', 'tags', 'custom_fields', 'created', 'last_updated', 'interface_count',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
@ -541,6 +541,8 @@ class DeviceViewSet(ConfigContextQuerySetMixin, NetBoxModelViewSet):
|
|||||||
class VirtualDeviceContextViewSet(NetBoxModelViewSet):
|
class VirtualDeviceContextViewSet(NetBoxModelViewSet):
|
||||||
queryset = VirtualDeviceContext.objects.prefetch_related(
|
queryset = VirtualDeviceContext.objects.prefetch_related(
|
||||||
'device__device_type', 'device', 'tenant', 'tags',
|
'device__device_type', 'device', 'tenant', 'tags',
|
||||||
|
).annotate(
|
||||||
|
interface_count=count_related(Interface, 'vdcs'),
|
||||||
)
|
)
|
||||||
serializer_class = serializers.VirtualDeviceContextSerializer
|
serializer_class = serializers.VirtualDeviceContextSerializer
|
||||||
filterset_class = filtersets.VirtualDeviceContextFilterSet
|
filterset_class = filtersets.VirtualDeviceContextFilterSet
|
||||||
|
@ -1462,7 +1462,6 @@ class InterfaceForm(InterfaceCommonForm, ModularDeviceComponentForm):
|
|||||||
required=False,
|
required=False,
|
||||||
label=_('VRF')
|
label=_('VRF')
|
||||||
)
|
)
|
||||||
|
|
||||||
wwn = forms.CharField(
|
wwn = forms.CharField(
|
||||||
empty_value=None,
|
empty_value=None,
|
||||||
required=False,
|
required=False,
|
||||||
@ -1470,9 +1469,9 @@ class InterfaceForm(InterfaceCommonForm, ModularDeviceComponentForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
('Interface', ('device', 'module', 'vdcs', 'name', 'label', 'type', 'speed', 'duplex', 'description', 'tags')),
|
('Interface', ('device', 'module', 'name', 'label', 'type', 'speed', 'duplex', 'description', 'tags')),
|
||||||
('Addressing', ('vrf', 'mac_address', 'wwn')),
|
('Addressing', ('vrf', 'mac_address', 'wwn')),
|
||||||
('Operation', ('mtu', 'tx_power', 'enabled', 'mgmt_only', 'mark_connected')),
|
('Operation', ('vdcs', 'mtu', 'tx_power', 'enabled', 'mgmt_only', 'mark_connected')),
|
||||||
('Related Interfaces', ('parent', 'bridge', 'lag')),
|
('Related Interfaces', ('parent', 'bridge', 'lag')),
|
||||||
('PoE', ('poe_mode', 'poe_type')),
|
('PoE', ('poe_mode', 'poe_type')),
|
||||||
('802.1Q Switching', ('mode', 'vlan_group', 'untagged_vlan', 'tagged_vlans')),
|
('802.1Q Switching', ('mode', 'vlan_group', 'untagged_vlan', 'tagged_vlans')),
|
||||||
|
@ -916,6 +916,11 @@ class VirtualDeviceContextTable(TenancyColumnsMixin, NetBoxTable):
|
|||||||
linkify=True,
|
linkify=True,
|
||||||
verbose_name='IPv6 Address'
|
verbose_name='IPv6 Address'
|
||||||
)
|
)
|
||||||
|
interface_count = columns.LinkedCountColumn(
|
||||||
|
viewname='dcim:interface_list',
|
||||||
|
url_params={'vdc_id': 'pk'},
|
||||||
|
verbose_name='Interfaces'
|
||||||
|
)
|
||||||
|
|
||||||
comments = columns.MarkdownColumn()
|
comments = columns.MarkdownColumn()
|
||||||
|
|
||||||
@ -926,8 +931,8 @@ class VirtualDeviceContextTable(TenancyColumnsMixin, NetBoxTable):
|
|||||||
class Meta(NetBoxTable.Meta):
|
class Meta(NetBoxTable.Meta):
|
||||||
model = models.VirtualDeviceContext
|
model = models.VirtualDeviceContext
|
||||||
fields = (
|
fields = (
|
||||||
'pk', 'id', 'name', 'status', 'identifier', 'tenant', 'tenant_group',
|
'pk', 'id', 'name', 'status', 'identifier', 'tenant', 'tenant_group', 'primary_ip', 'primary_ip4',
|
||||||
'primary_ip', 'primary_ip4', 'primary_ip6', 'comments', 'tags', 'created', 'last_updated',
|
'primary_ip6', 'comments', 'tags', 'interface_count', 'created', 'last_updated',
|
||||||
)
|
)
|
||||||
default_columns = (
|
default_columns = (
|
||||||
'pk', 'name', 'identifier', 'status', 'tenant', 'primary_ip',
|
'pk', 'name', 'identifier', 'status', 'tenant', 'primary_ip',
|
||||||
|
@ -3611,7 +3611,9 @@ register_model_view(PowerFeed, 'trace', kwargs={'model': PowerFeed})(PathTraceVi
|
|||||||
|
|
||||||
# VDC
|
# VDC
|
||||||
class VirtualDeviceContextListView(generic.ObjectListView):
|
class VirtualDeviceContextListView(generic.ObjectListView):
|
||||||
queryset = VirtualDeviceContext.objects.all()
|
queryset = VirtualDeviceContext.objects.annotate(
|
||||||
|
interface_count=count_related(Interface, 'vdcs'),
|
||||||
|
)
|
||||||
filterset = filtersets.VirtualDeviceContextFilterSet
|
filterset = filtersets.VirtualDeviceContextFilterSet
|
||||||
filterset_form = forms.VirtualDeviceContextFilterForm
|
filterset_form = forms.VirtualDeviceContextFilterForm
|
||||||
table = tables.VirtualDeviceContextTable
|
table = tables.VirtualDeviceContextTable
|
||||||
@ -3624,6 +3626,7 @@ class VirtualDeviceContextView(generic.ObjectView):
|
|||||||
def get_extra_context(self, request, instance):
|
def get_extra_context(self, request, instance):
|
||||||
interfaces_table = tables.InterfaceTable(instance.interfaces, user=request.user)
|
interfaces_table = tables.InterfaceTable(instance.interfaces, user=request.user)
|
||||||
interfaces_table.configure(request)
|
interfaces_table.configure(request)
|
||||||
|
interfaces_table.columns.hide('device')
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'interfaces_table': interfaces_table,
|
'interfaces_table': interfaces_table,
|
||||||
|
Loading…
Reference in New Issue
Block a user