mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-23 07:56:44 -06:00
8356 render single disk field
This commit is contained in:
parent
84b4ab1c5e
commit
f869fe6c77
@ -85,7 +85,6 @@ class VirtualMachineSerializer(NetBoxModelSerializer):
|
||||
# Counter fields
|
||||
interface_count = serializers.IntegerField(read_only=True)
|
||||
virtual_disk_count = serializers.IntegerField(read_only=True)
|
||||
virtual_disk_space = serializers.IntegerField(read_only=True)
|
||||
|
||||
class Meta:
|
||||
model = VirtualMachine
|
||||
@ -93,10 +92,16 @@ class VirtualMachineSerializer(NetBoxModelSerializer):
|
||||
'id', 'url', 'display', 'name', 'status', 'site', 'cluster', 'device', 'role', 'tenant', 'platform',
|
||||
'primary_ip', 'primary_ip4', 'primary_ip6', 'vcpus', 'memory', 'disk', 'description', 'comments',
|
||||
'config_template', 'local_context_data', 'tags', 'custom_fields', 'created', 'last_updated',
|
||||
'interface_count', 'virtual_disk_count', 'virtual_disk_space',
|
||||
'interface_count', 'virtual_disk_count',
|
||||
]
|
||||
validators = []
|
||||
|
||||
def get_disk(self, obj):
|
||||
if obj.disk:
|
||||
return obj.disk
|
||||
|
||||
return obj.virtual_disk_space
|
||||
|
||||
|
||||
class VirtualMachineWithConfigContextSerializer(VirtualMachineSerializer):
|
||||
config_context = serializers.SerializerMethodField()
|
||||
|
@ -93,7 +93,8 @@ class VirtualMachineTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable)
|
||||
verbose_name=_('Config Template'),
|
||||
linkify=True
|
||||
)
|
||||
disk_size = tables.Column(
|
||||
disk = tables.Column(
|
||||
empty_values=(),
|
||||
verbose_name=_('Disk Size (GB)'),
|
||||
)
|
||||
|
||||
@ -101,18 +102,26 @@ class VirtualMachineTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable)
|
||||
model = VirtualMachine
|
||||
fields = (
|
||||
'pk', 'id', 'name', 'status', 'site', 'cluster', 'device', 'role', 'tenant', 'tenant_group', 'platform',
|
||||
'vcpus', 'memory', 'disk', 'disk_size', 'primary_ip4', 'primary_ip6', 'primary_ip', 'description', 'comments',
|
||||
'vcpus', 'memory', 'disk', 'primary_ip4', 'primary_ip6', 'primary_ip', 'description', 'comments',
|
||||
'config_template', 'contacts', 'tags', 'created', 'last_updated',
|
||||
)
|
||||
default_columns = (
|
||||
'pk', 'name', 'status', 'site', 'cluster', 'role', 'tenant', 'vcpus', 'memory', 'disk_size', 'primary_ip',
|
||||
'pk', 'name', 'status', 'site', 'cluster', 'role', 'tenant', 'vcpus', 'memory', 'disk', 'primary_ip',
|
||||
)
|
||||
|
||||
def render_disk(self, value, record):
|
||||
if record.disk:
|
||||
return record.disk
|
||||
elif record.disk_size:
|
||||
return record.disk_size
|
||||
else:
|
||||
return '—'
|
||||
|
||||
#
|
||||
# VM components
|
||||
#
|
||||
|
||||
|
||||
class VMInterfaceTable(BaseInterfaceTable):
|
||||
virtual_machine = tables.Column(
|
||||
verbose_name=_('Virtual Machine'),
|
||||
|
Loading…
Reference in New Issue
Block a user