@@ -723,8 +723,10 @@ class DeviceRoleTable(BaseTable):
723
723
orderable = False ,
724
724
verbose_name = 'VMs'
725
725
)
726
- color = tables .TemplateColumn (COLOR_LABEL , verbose_name = 'Label' )
727
- slug = tables .Column (verbose_name = 'Slug' )
726
+ color = tables .TemplateColumn (
727
+ template_code = COLOR_LABEL ,
728
+ verbose_name = 'Label'
729
+ )
728
730
actions = tables .TemplateColumn (
729
731
template_code = DEVICEROLE_ACTIONS ,
730
732
attrs = {'td' : {'class' : 'text-right noprint' }},
@@ -734,6 +736,7 @@ class DeviceRoleTable(BaseTable):
734
736
class Meta (BaseTable .Meta ):
735
737
model = DeviceRole
736
738
fields = ('pk' , 'name' , 'device_count' , 'vm_count' , 'color' , 'vm_role' , 'description' , 'slug' , 'actions' )
739
+ default_columns = ('pk' , 'name' , 'device_count' , 'vm_count' , 'color' , 'vm_role' , 'description' , 'actions' )
737
740
738
741
739
742
#
@@ -763,7 +766,11 @@ class PlatformTable(BaseTable):
763
766
class Meta (BaseTable .Meta ):
764
767
model = Platform
765
768
fields = (
766
- 'pk' , 'name' , 'manufacturer' , 'device_count' , 'vm_count' , 'slug' , 'napalm_driver' , 'description' , 'actions' ,
769
+ 'pk' , 'name' , 'manufacturer' , 'device_count' , 'vm_count' , 'slug' , 'napalm_driver' , 'napalm_args' ,
770
+ 'description' , 'actions' ,
771
+ )
772
+ default_columns = (
773
+ 'pk' , 'name' , 'manufacturer' , 'device_count' , 'vm_count' , 'napalm_driver' , 'description' , 'actions' ,
767
774
)
768
775
769
776
@@ -777,40 +784,96 @@ class DeviceTable(BaseTable):
777
784
order_by = ('_name' ,),
778
785
template_code = DEVICE_LINK
779
786
)
780
- status = tables .TemplateColumn (template_code = STATUS_LABEL , verbose_name = 'Status' )
781
- tenant = tables .TemplateColumn (template_code = COL_TENANT )
782
- site = tables .LinkColumn ('dcim:site' , args = [Accessor ('site.slug' )])
783
- rack = tables .LinkColumn ('dcim:rack' , args = [Accessor ('rack.pk' )])
784
- device_role = tables .TemplateColumn (DEVICE_ROLE , verbose_name = 'Role' )
787
+ status = tables .TemplateColumn (
788
+ template_code = STATUS_LABEL
789
+ )
790
+ tenant = tables .TemplateColumn (
791
+ template_code = COL_TENANT
792
+ )
793
+ site = tables .LinkColumn (
794
+ viewname = 'dcim:site' ,
795
+ args = [Accessor ('site.slug' )]
796
+ )
797
+ rack = tables .LinkColumn (
798
+ viewname = 'dcim:rack' ,
799
+ args = [Accessor ('rack.pk' )]
800
+ )
801
+ device_role = tables .TemplateColumn (
802
+ template_code = DEVICE_ROLE ,
803
+ verbose_name = 'Role'
804
+ )
785
805
device_type = tables .LinkColumn (
786
- 'dcim:devicetype' , args = [Accessor ('device_type.pk' )], verbose_name = 'Type' ,
806
+ viewname = 'dcim:devicetype' ,
807
+ args = [Accessor ('device_type.pk' )],
808
+ verbose_name = 'Type' ,
787
809
text = lambda record : record .device_type .display_name
788
810
)
789
-
790
- class Meta (BaseTable .Meta ):
791
- model = Device
792
- fields = ('pk' , 'name' , 'status' , 'tenant' , 'site' , 'rack' , 'device_role' , 'device_type' )
793
-
794
-
795
- class DeviceDetailTable (DeviceTable ):
796
811
primary_ip = tables .TemplateColumn (
797
- orderable = False , verbose_name = 'IP Address' , template_code = DEVICE_PRIMARY_IP
812
+ template_code = DEVICE_PRIMARY_IP ,
813
+ orderable = False ,
814
+ verbose_name = 'IP Address'
815
+ )
816
+ primary_ip4 = tables .LinkColumn (
817
+ viewname = 'ipam:ipaddress' ,
818
+ args = [Accessor ('primary_ip4.pk' )],
819
+ verbose_name = 'IPv4 Address'
820
+ )
821
+ primary_ip6 = tables .LinkColumn (
822
+ viewname = 'ipam:ipaddress' ,
823
+ args = [Accessor ('primary_ip6.pk' )],
824
+ verbose_name = 'IPv6 Address'
825
+ )
826
+ cluster = tables .LinkColumn (
827
+ viewname = 'virtualization:cluster' ,
828
+ args = [Accessor ('cluster.pk' )]
829
+ )
830
+ virtual_chassis = tables .LinkColumn (
831
+ viewname = 'dcim:virtualchassis' ,
832
+ args = [Accessor ('virtual_chassis.pk' )]
833
+ )
834
+ vc_position = tables .Column (
835
+ verbose_name = 'VC Position'
836
+ )
837
+ vc_priority = tables .Column (
838
+ verbose_name = 'VC Priority'
798
839
)
799
840
800
- class Meta (DeviceTable .Meta ):
841
+ class Meta (BaseTable .Meta ):
801
842
model = Device
802
- fields = ('pk' , 'name' , 'status' , 'tenant' , 'site' , 'rack' , 'device_role' , 'device_type' , 'primary_ip' )
843
+ fields = (
844
+ 'pk' , 'name' , 'status' , 'tenant' , 'device_role' , 'device_type' , 'platform' , 'serial' , 'asset_tag' , 'site' ,
845
+ 'rack' , 'position' , 'face' , 'primary_ip' , 'primary_ip4' , 'primary_ip6' , 'cluster' , 'virtual_chassis' ,
846
+ 'vc_position' , 'vc_priority' ,
847
+ )
848
+ default_columns = (
849
+ 'pk' , 'name' , 'status' , 'tenant' , 'site' , 'rack' , 'device_role' , 'device_type' , 'primary_ip' ,
850
+ )
803
851
804
852
805
853
class DeviceImportTable (BaseTable ):
806
- name = tables .TemplateColumn (template_code = DEVICE_LINK , verbose_name = 'Name' )
807
- status = tables .TemplateColumn (template_code = STATUS_LABEL , verbose_name = 'Status' )
808
- tenant = tables .TemplateColumn (template_code = COL_TENANT )
809
- site = tables .LinkColumn ('dcim:site' , args = [Accessor ('site.slug' )], verbose_name = 'Site' )
810
- rack = tables .LinkColumn ('dcim:rack' , args = [Accessor ('rack.pk' )], verbose_name = 'Rack' )
811
- position = tables .Column (verbose_name = 'Position' )
812
- device_role = tables .Column (verbose_name = 'Role' )
813
- device_type = tables .Column (verbose_name = 'Type' )
854
+ name = tables .TemplateColumn (
855
+ template_code = DEVICE_LINK
856
+ )
857
+ status = tables .TemplateColumn (
858
+ template_code = STATUS_LABEL
859
+ )
860
+ tenant = tables .TemplateColumn (
861
+ template_code = COL_TENANT
862
+ )
863
+ site = tables .LinkColumn (
864
+ viewname = 'dcim:site' ,
865
+ args = [Accessor ('site.slug' )]
866
+ )
867
+ rack = tables .LinkColumn (
868
+ viewname = 'dcim:rack' ,
869
+ args = [Accessor ('rack.pk' )]
870
+ )
871
+ device_role = tables .Column (
872
+ verbose_name = 'Role'
873
+ )
874
+ device_type = tables .Column (
875
+ verbose_name = 'Type'
876
+ )
814
877
815
878
class Meta (BaseTable .Meta ):
816
879
model = Device
@@ -986,23 +1049,23 @@ class CableTable(BaseTable):
986
1049
template_code = CABLE_TERMINATION_PARENT ,
987
1050
accessor = Accessor ('termination_a' ),
988
1051
orderable = False ,
989
- verbose_name = 'Termination A'
1052
+ verbose_name = 'Side A'
990
1053
)
991
1054
termination_a = tables .LinkColumn (
992
1055
accessor = Accessor ('termination_a' ),
993
1056
orderable = False ,
994
- verbose_name = ''
1057
+ verbose_name = 'Termination A '
995
1058
)
996
1059
termination_b_parent = tables .TemplateColumn (
997
1060
template_code = CABLE_TERMINATION_PARENT ,
998
1061
accessor = Accessor ('termination_b' ),
999
1062
orderable = False ,
1000
- verbose_name = 'Termination B'
1063
+ verbose_name = 'Side B'
1001
1064
)
1002
1065
termination_b = tables .LinkColumn (
1003
1066
accessor = Accessor ('termination_b' ),
1004
1067
orderable = False ,
1005
- verbose_name = ''
1068
+ verbose_name = 'Termination B '
1006
1069
)
1007
1070
status = tables .TemplateColumn (
1008
1071
template_code = STATUS_LABEL
@@ -1019,6 +1082,10 @@ class Meta(BaseTable.Meta):
1019
1082
'pk' , 'id' , 'label' , 'termination_a_parent' , 'termination_a' , 'termination_b_parent' , 'termination_b' ,
1020
1083
'status' , 'type' , 'color' , 'length' ,
1021
1084
)
1085
+ default_columns = (
1086
+ 'pk' , 'id' , 'label' , 'termination_a_parent' , 'termination_a' , 'termination_b_parent' , 'termination_b' ,
1087
+ 'status' , 'type' ,
1088
+ )
1022
1089
1023
1090
1024
1091
#
@@ -1120,12 +1187,21 @@ class Meta(BaseTable.Meta):
1120
1187
1121
1188
class InventoryItemTable (BaseTable ):
1122
1189
pk = ToggleColumn ()
1123
- device = tables .LinkColumn ('dcim:device_inventory' , args = [Accessor ('device.pk' )])
1124
- manufacturer = tables .Column (accessor = Accessor ('manufacturer.name' ), verbose_name = 'Manufacturer' )
1190
+ device = tables .LinkColumn (
1191
+ viewname = 'dcim:device_inventory' ,
1192
+ args = [Accessor ('device.pk' )]
1193
+ )
1194
+ manufacturer = tables .Column (
1195
+ accessor = Accessor ('manufacturer.name' )
1196
+ )
1197
+ discovered = BooleanColumn ()
1125
1198
1126
1199
class Meta (BaseTable .Meta ):
1127
1200
model = InventoryItem
1128
- fields = ('pk' , 'device' , 'name' , 'manufacturer' , 'part_id' , 'serial' , 'asset_tag' , 'description' )
1201
+ fields = (
1202
+ 'pk' , 'device' , 'name' , 'manufacturer' , 'part_id' , 'serial' , 'asset_tag' , 'description' , 'discovered'
1203
+ )
1204
+ default_columns = ('pk' , 'device' , 'name' , 'manufacturer' , 'part_id' , 'serial' , 'asset_tag' )
1129
1205
1130
1206
1131
1207
#
@@ -1145,6 +1221,7 @@ class VirtualChassisTable(BaseTable):
1145
1221
class Meta (BaseTable .Meta ):
1146
1222
model = VirtualChassis
1147
1223
fields = ('pk' , 'name' , 'domain' , 'member_count' )
1224
+ default_columns = ('pk' , 'name' , 'domain' , 'member_count' )
1148
1225
1149
1226
1150
1227
#
@@ -1166,6 +1243,7 @@ class PowerPanelTable(BaseTable):
1166
1243
class Meta (BaseTable .Meta ):
1167
1244
model = PowerPanel
1168
1245
fields = ('pk' , 'name' , 'site' , 'rack_group' , 'powerfeed_count' )
1246
+ default_columns = ('pk' , 'name' , 'site' , 'rack_group' , 'powerfeed_count' )
1169
1247
1170
1248
1171
1249
#
@@ -1189,7 +1267,19 @@ class PowerFeedTable(BaseTable):
1189
1267
type = tables .TemplateColumn (
1190
1268
template_code = TYPE_LABEL
1191
1269
)
1270
+ max_utilization = tables .TemplateColumn (
1271
+ template_code = "{{ value }}%"
1272
+ )
1273
+ available_power = tables .Column (
1274
+ verbose_name = 'Available power (VA)'
1275
+ )
1192
1276
1193
1277
class Meta (BaseTable .Meta ):
1194
1278
model = PowerFeed
1195
- fields = ('pk' , 'name' , 'power_panel' , 'rack' , 'status' , 'type' , 'supply' , 'voltage' , 'amperage' , 'phase' )
1279
+ fields = (
1280
+ 'pk' , 'name' , 'power_panel' , 'rack' , 'status' , 'type' , 'supply' , 'voltage' , 'amperage' , 'phase' ,
1281
+ 'max_utilization' , 'available_power' ,
1282
+ )
1283
+ default_columns = (
1284
+ 'pk' , 'name' , 'power_panel' , 'rack' , 'status' , 'type' , 'supply' , 'voltage' , 'amperage' , 'phase' ,
1285
+ )
0 commit comments