Переглянути джерело

Closes #3529: Enable filtering circuits list by region

Jeremy Stretch 6 роки тому
батько
коміт
b8d8cb33ff
2 змінених файлів з 15 додано та 4 видалено
  1. 2 2
      CHANGELOG.md
  2. 13 2
      netbox/circuits/forms.py

+ 2 - 2
CHANGELOG.md

@@ -3,6 +3,7 @@ v2.6.5 (FUTURE)
 ## Enhancements
 
 * [#3524](https://github.com/netbox-community/netbox/issues/3524) -  Enable bulk editing of power outlet/power port associations
+* [#3529](https://github.com/netbox-community/netbox/issues/3529) -  Enable filtering circuits list by region
 
 ## Bug Fixes
 
@@ -10,8 +11,7 @@ v2.6.5 (FUTURE)
 * [#3519](https://github.com/netbox-community/netbox/issues/3519) -  Prevent cables from being terminated to virtual/wireless interfaces via API
 * [#3521](https://github.com/netbox-community/netbox/issues/3521) -  Fix error in `parseURL` related to variables in API URL
 * [#3531](https://github.com/netbox-community/netbox/issues/3531) -  Fixed rack role foreground color
-* [#3532](https://github.com/netbox-community/netbox/issues/3532) -  Added "device" to graph documentation under "type" field
-* [#3534](https://github.com/netbox-community/netbox/issues/3534) -  Added blank option for untagged vlans
+* [#3534](https://github.com/netbox-community/netbox/issues/3534) -  Added blank option for untagged VLANs
 
 v2.6.4 (2019-09-19)
 

+ 13 - 2
netbox/circuits/forms.py

@@ -1,7 +1,7 @@
 from django import forms
 from taggit.forms import TagField
 
-from dcim.models import Site
+from dcim.models import Region, Site
 from extras.forms import AddRemoveTagsForm, CustomFieldForm, CustomFieldBulkEditForm, CustomFieldFilterForm
 from tenancy.forms import TenancyForm
 from tenancy.forms import TenancyFilterForm
@@ -268,7 +268,9 @@ class CircuitBulkEditForm(BootstrapMixin, AddRemoveTagsForm, CustomFieldBulkEdit
 
 class CircuitFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldFilterForm):
     model = Circuit
-    field_order = ['q', 'type', 'provider', 'status', 'site', 'tenant_group', 'tenant', 'commit_rate']
+    field_order = [
+        'q', 'type', 'provider', 'status', 'region', 'site', 'tenant_group', 'tenant', 'commit_rate',
+    ]
     q = forms.CharField(
         required=False,
         label='Search'
@@ -294,6 +296,15 @@ class CircuitFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldFilterForm
         required=False,
         widget=StaticSelect2Multiple()
     )
+    region = forms.ModelMultipleChoiceField(
+        queryset=Region.objects.all(),
+        to_field_name='slug',
+        required=False,
+        widget=APISelectMultiple(
+            api_url="/api/dcim/regions/",
+            value_field="slug",
+        )
+    )
     site = FilterChoiceField(
         queryset=Site.objects.all(),
         to_field_name='slug',