Browse Source

Closes #1784: Added cluster_type filters for virtual machines

Jeremy Stretch 7 years ago
parent
commit
779d685335
2 changed files with 16 additions and 0 deletions
  1. 11 0
      netbox/virtualization/filters.py
  2. 5 0
      netbox/virtualization/forms.py

+ 11 - 0
netbox/virtualization/filters.py

@@ -84,6 +84,17 @@ class VirtualMachineFilter(CustomFieldFilterSet):
         to_field_name='slug',
         label='Cluster group (slug)',
     )
+    cluster_type_id = django_filters.ModelMultipleChoiceFilter(
+        name='cluster__type',
+        queryset=ClusterType.objects.all(),
+        label='Cluster type (ID)',
+    )
+    cluster_type = django_filters.ModelMultipleChoiceFilter(
+        name='cluster__type__slug',
+        queryset=ClusterType.objects.all(),
+        to_field_name='slug',
+        label='Cluster type (slug)',
+    )
     cluster_id = django_filters.ModelMultipleChoiceFilter(
         queryset=Cluster.objects.all(),
         label='Cluster (ID)',

+ 5 - 0
netbox/virtualization/forms.py

@@ -340,6 +340,11 @@ class VirtualMachineFilterForm(BootstrapMixin, CustomFieldFilterForm):
         to_field_name='slug',
         null_option=(0, 'None')
     )
+    cluster_type = FilterChoiceField(
+        queryset=ClusterType.objects.all(),
+        to_field_name='slug',
+        null_option=(0, 'None')
+    )
     cluster_id = FilterChoiceField(
         queryset=Cluster.objects.annotate(filter_count=Count('virtual_machines')),
         label='Cluster'