| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- import django_tables2 as tables
- from django_tables2.utils import Accessor
- from netbox.tables import BaseTable, columns
- from dcim.models import ConsolePort, Interface, PowerPort
- from .cables import *
- from .devices import *
- from .devicetypes import *
- from .modules import *
- from .power import *
- from .racks import *
- from .sites import *
- #
- # Device connections
- #
- class ConsoleConnectionTable(BaseTable):
- console_server = tables.Column(
- accessor=Accessor('_path__destination__device'),
- orderable=False,
- linkify=True,
- verbose_name='Console Server'
- )
- console_server_port = tables.Column(
- accessor=Accessor('_path__destination'),
- orderable=False,
- linkify=True,
- verbose_name='Port'
- )
- device = tables.Column(
- linkify=True
- )
- name = tables.Column(
- linkify=True,
- verbose_name='Console Port'
- )
- reachable = columns.BooleanColumn(
- accessor=Accessor('_path__is_active'),
- verbose_name='Reachable'
- )
- class Meta(BaseTable.Meta):
- model = ConsolePort
- fields = ('device', 'name', 'console_server', 'console_server_port', 'reachable')
- class PowerConnectionTable(BaseTable):
- pdu = tables.Column(
- accessor=Accessor('_path__destination__device'),
- orderable=False,
- linkify=True,
- verbose_name='PDU'
- )
- outlet = tables.Column(
- accessor=Accessor('_path__destination'),
- orderable=False,
- linkify=True,
- verbose_name='Outlet'
- )
- device = tables.Column(
- linkify=True
- )
- name = tables.Column(
- linkify=True,
- verbose_name='Power Port'
- )
- reachable = columns.BooleanColumn(
- accessor=Accessor('_path__is_active'),
- verbose_name='Reachable'
- )
- class Meta(BaseTable.Meta):
- model = PowerPort
- fields = ('device', 'name', 'pdu', 'outlet', 'reachable')
- class InterfaceConnectionTable(BaseTable):
- device_a = tables.Column(
- accessor=Accessor('device'),
- linkify=True,
- verbose_name='Device A'
- )
- interface_a = tables.Column(
- accessor=Accessor('name'),
- linkify=True,
- verbose_name='Interface A'
- )
- device_b = tables.Column(
- accessor=Accessor('_path__destination__device'),
- orderable=False,
- linkify=True,
- verbose_name='Device B'
- )
- interface_b = tables.Column(
- accessor=Accessor('_path__destination'),
- orderable=False,
- linkify=True,
- verbose_name='Interface B'
- )
- reachable = columns.BooleanColumn(
- accessor=Accessor('_path__is_active'),
- verbose_name='Reachable'
- )
- class Meta(BaseTable.Meta):
- model = Interface
- fields = ('device_a', 'interface_a', 'device_b', 'interface_b', 'reachable')
|