| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- from django.utils.translation import gettext_lazy as _
- import django_tables2 as tables
- from dcim.models import Module, ModuleType
- from netbox.tables import NetBoxTable, columns
- from .template_code import WEIGHT
- __all__ = (
- 'ModuleTable',
- 'ModuleTypeTable',
- )
- class ModuleTypeTable(NetBoxTable):
- model = tables.Column(
- linkify=True,
- verbose_name=_('Module Type')
- )
- manufacturer = tables.Column(
- verbose_name=_('Manufacturer'),
- linkify=True
- )
- instance_count = columns.LinkedCountColumn(
- viewname='dcim:module_list',
- url_params={'module_type_id': 'pk'},
- verbose_name=_('Instances')
- )
- comments = columns.MarkdownColumn(
- verbose_name=_('Comments'),
- )
- tags = columns.TagColumn(
- url_name='dcim:moduletype_list'
- )
- weight = columns.TemplateColumn(
- verbose_name=_('Weight'),
- template_code=WEIGHT,
- order_by=('_abs_weight', 'weight_unit')
- )
- class Meta(NetBoxTable.Meta):
- model = ModuleType
- fields = (
- 'pk', 'id', 'model', 'manufacturer', 'part_number', 'weight', 'description', 'comments', 'tags',
- )
- default_columns = (
- 'pk', 'model', 'manufacturer', 'part_number',
- )
- class ModuleTable(NetBoxTable):
- device = tables.Column(
- verbose_name=_('Device'),
- linkify=True
- )
- module_bay = tables.Column(
- verbose_name=_('Module Bay'),
- linkify=True
- )
- manufacturer = tables.Column(
- verbose_name=_('Manufacturer'),
- accessor=tables.A('module_type__manufacturer'),
- linkify=True
- )
- module_type = tables.Column(
- verbose_name=_('Module Type'),
- linkify=True
- )
- status = columns.ChoiceFieldColumn(
- verbose_name=_('Status'),
- )
- comments = columns.MarkdownColumn(
- verbose_name=_('Comments'),
- )
- tags = columns.TagColumn(
- url_name='dcim:module_list'
- )
- class Meta(NetBoxTable.Meta):
- model = Module
- fields = (
- 'pk', 'id', 'device', 'module_bay', 'manufacturer', 'module_type', 'status', 'serial', 'asset_tag',
- 'description', 'comments', 'tags',
- )
- default_columns = (
- 'pk', 'id', 'device', 'module_bay', 'manufacturer', 'module_type', 'status', 'serial', 'asset_tag',
- )
|