Fixes #2781: Fixes filter by regions on site and device list

This commit is contained in:
dansheps 2019-02-22 21:39:44 -06:00
parent 8dfef83f1a
commit 8981e8b292
2 changed files with 15 additions and 12 deletions

View File

@ -2,6 +2,7 @@ v2.5.8 (FUTURE)
## Bug Fixes
* [#2781](https://github.com/digitalocean/netbox/issues/2781) - Filtering sites by multiple regions
* [#2923](https://github.com/digitalocean/netbox/issues/2923) - Provider filter form's site field should be blank by default
---

View File

@ -49,14 +49,14 @@ class SiteFilter(CustomFieldFilterSet, django_filters.FilterSet):
choices=SITE_STATUS_CHOICES,
null_value=None
)
region_id = django_filters.NumberFilter(
method='filter_region',
field_name='pk',
region_id = django_filters.ModelMultipleChoiceFilter(
queryset=Region.objects.all(),
label='Region (ID)',
)
region = django_filters.CharFilter(
method='filter_region',
field_name='slug',
region = django_filters.ModelMultipleChoiceFilter(
field_name='region__slug',
queryset=Region.objects.all(),
to_field_name='slug',
label='Region (slug)',
)
tenant_id = django_filters.ModelMultipleChoiceFilter(
@ -513,14 +513,16 @@ class DeviceFilter(CustomFieldFilterSet):
)
name = NullableCharFieldFilter()
asset_tag = NullableCharFieldFilter()
region_id = django_filters.NumberFilter(
method='filter_region',
field_name='pk',
region_id = django_filters.ModelMultipleChoiceFilter(
field_name='site__region__id',
queryset=Region.objects.all(),
to_field_name='id',
label='Region (ID)',
)
region = django_filters.CharFilter(
method='filter_region',
field_name='slug',
region = django_filters.ModelMultipleChoiceFilter(
field_name='site__region__slug',
queryset=Region.objects.all(),
to_field_name='slug',
label='Region (slug)',
)
site_id = django_filters.ModelMultipleChoiceFilter(