diff --git a/netbox/dcim/admin.py b/netbox/dcim/admin.py index 9fd16a87d..8828b52c4 100644 --- a/netbox/dcim/admin.py +++ b/netbox/dcim/admin.py @@ -183,10 +183,14 @@ class DeviceAdmin(admin.ModelAdmin): DeviceBayAdmin, ModuleAdmin, ] - list_display = ['display_name', 'device_type', 'device_role', 'primary_ip', 'rack', 'position', 'asset_tag', + list_display = ['display_name', 'device_type_full_name', 'device_role', 'primary_ip', 'rack', 'position', 'asset_tag', 'serial'] list_filter = ['device_role'] def get_queryset(self, request): qs = super(DeviceAdmin, self).get_queryset(request) return qs.select_related('device_type__manufacturer', 'device_role', 'primary_ip4', 'primary_ip6', 'rack') + + def device_type_full_name(self, obj): + return obj.device_type.full_name + device_type_full_name.short_description = 'Device type' diff --git a/netbox/dcim/models.py b/netbox/dcim/models.py index e8967b0c0..a87b778d7 100644 --- a/netbox/dcim/models.py +++ b/netbox/dcim/models.py @@ -561,7 +561,7 @@ class DeviceType(models.Model): ] def __unicode__(self): - return u'{} {}'.format(self.manufacturer, self.model) + return self.model def __init__(self, *args, **kwargs): super(DeviceType, self).__init__(*args, **kwargs) @@ -617,6 +617,10 @@ class DeviceType(models.Model): 'u_height': "Child device types must be 0U." }) + @property + def full_name(self): + return u'{} {}'.format(self.manufacturer.name, self.model) + @property def is_parent_device(self): return bool(self.subdevice_role) diff --git a/netbox/dcim/tables.py b/netbox/dcim/tables.py index c81c24f82..94d359ac0 100644 --- a/netbox/dcim/tables.py +++ b/netbox/dcim/tables.py @@ -294,7 +294,8 @@ class PlatformTable(BaseTable): name = tables.LinkColumn(verbose_name='Name') device_count = tables.Column(verbose_name='Devices') slug = tables.Column(verbose_name='Slug') - actions = tables.TemplateColumn(template_code=PLATFORM_ACTIONS, attrs={'td': {'class': 'text-right'}}, verbose_name='') + actions = tables.TemplateColumn(template_code=PLATFORM_ACTIONS, attrs={'td': {'class': 'text-right'}}, + verbose_name='') class Meta(BaseTable.Meta): model = Platform @@ -313,7 +314,8 @@ class DeviceTable(BaseTable): site = tables.Column(accessor=Accessor('rack.site'), verbose_name='Site') rack = tables.LinkColumn('dcim:rack', args=[Accessor('rack.pk')], verbose_name='Rack') device_role = tables.TemplateColumn(DEVICE_ROLE, verbose_name='Role') - device_type = tables.Column(verbose_name='Type') + device_type = tables.LinkColumn('dcim:devicetype', args=[Accessor('device_type.pk')], verbose_name='Type', + text=lambda record: record.device_type.full_name) primary_ip = tables.TemplateColumn(orderable=False, verbose_name='IP Address', template_code="{{ record.primary_ip.address.ip }}") diff --git a/netbox/templates/dcim/device.html b/netbox/templates/dcim/device.html index 14d5b0869..785938970 100644 --- a/netbox/templates/dcim/device.html +++ b/netbox/templates/dcim/device.html @@ -56,7 +56,7 @@
Model | -{{ device.device_type }} | +{{ device.device_type.full_name }} | ||||||
Serial Number | diff --git a/netbox/templates/dcim/devicetype.html b/netbox/templates/dcim/devicetype.html index 42cb30f99..0492bd2cc 100644 --- a/netbox/templates/dcim/devicetype.html +++ b/netbox/templates/dcim/devicetype.html @@ -2,7 +2,7 @@ {% load helpers %} {% load render_table from django_tables2 %} -{% block title %}{{ devicetype }}{% endblock %} +{% block title %}{{ devicetype.manufacturer }} {{ devicetype.model }}{% endblock %} {% block content %}- {{ devicebay.installed_device.device_type }} + {{ devicebay.installed_device.device_type.full_name }} | {% else %}
diff --git a/netbox/templates/dcim/inc/_rack_elevation.html b/netbox/templates/dcim/inc/_rack_elevation.html
index 1ad8cdb57..0ffc6b7ad 100644
--- a/netbox/templates/dcim/inc/_rack_elevation.html
+++ b/netbox/templates/dcim/inc/_rack_elevation.html
@@ -24,7 +24,7 @@
{{ u.device.device_type.full_name }} ({{ u.device.device_type.u_height }}U)"> {{ u.device.name|default:u.device.device_role }} {% if u.device.devicebay_count %} ({{ u.device.get_children.count }}/{{ u.device.devicebay_count }}) diff --git a/netbox/templates/dcim/rack.html b/netbox/templates/dcim/rack.html index af457a21d..f2bafe43b 100644 --- a/netbox/templates/dcim/rack.html +++ b/netbox/templates/dcim/rack.html @@ -153,8 +153,14 @@ {{ device.name }} |
{{ device.device_role }} | -{{ device.device_type }} | -{% if device.parent_bay %}{{ device.parent_bay }}{% endif %} | +{{ device.device_type.full_name }} | ++ {% if device.parent_bay %} + {{ device.parent_bay }} + {% else %} + N/A + {% endif %} + |