From 28de9b89132e063597e59e6c518adc260ab5c306 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Tue, 25 Jan 2022 16:18:07 -0500 Subject: [PATCH] Refactor ChangeLoggedModelFilterSet --- netbox/netbox/filtersets.py | 48 +++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/netbox/netbox/filtersets.py b/netbox/netbox/filtersets.py index 3ddf252c7..a109b2c70 100644 --- a/netbox/netbox/filtersets.py +++ b/netbox/netbox/filtersets.py @@ -23,6 +23,31 @@ __all__ = ( ) +# +# Mixins +# + +class ChangeLoggedModelMixin: + created = django_filters.DateFilter() + created__gte = django_filters.DateFilter( + field_name='created', + lookup_expr='gte' + ) + created__lte = django_filters.DateFilter( + field_name='created', + lookup_expr='lte' + ) + last_updated = django_filters.DateTimeFilter() + last_updated__gte = django_filters.DateTimeFilter( + field_name='last_updated', + lookup_expr='gte' + ) + last_updated__lte = django_filters.DateTimeFilter( + field_name='last_updated', + lookup_expr='lte' + ) + + # # FilterSets # @@ -196,28 +221,11 @@ class BaseFilterSet(django_filters.FilterSet): return filters -class ChangeLoggedModelFilterSet(BaseFilterSet): - created = django_filters.DateFilter() - created__gte = django_filters.DateFilter( - field_name='created', - lookup_expr='gte' - ) - created__lte = django_filters.DateFilter( - field_name='created', - lookup_expr='lte' - ) - last_updated = django_filters.DateTimeFilter() - last_updated__gte = django_filters.DateTimeFilter( - field_name='last_updated', - lookup_expr='gte' - ) - last_updated__lte = django_filters.DateTimeFilter( - field_name='last_updated', - lookup_expr='lte' - ) +class ChangeLoggedModelFilterSet(ChangeLoggedModelMixin, BaseFilterSet): + pass -class PrimaryModelFilterSet(ChangeLoggedModelFilterSet): +class PrimaryModelFilterSet(ChangeLoggedModelMixin, BaseFilterSet): tag = TagFilter() def __init__(self, *args, **kwargs):