From 18422e1d268cff15d58fd93a709f5136ce43ad80 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Wed, 22 Nov 2023 13:49:26 -0500 Subject: [PATCH] Closes #14326: Move form mixins (#14327) * Move form mixins from extras app to netbox app * Remove obsolete extras/admin.py --- netbox/core/forms/filtersets.py | 2 +- netbox/dcim/forms/bulk_create.py | 4 ++-- netbox/extras/admin.py | 2 -- netbox/extras/forms/__init__.py | 1 - netbox/extras/forms/filtersets.py | 2 +- netbox/netbox/forms/base.py | 2 +- netbox/{extras => netbox}/forms/mixins.py | 0 netbox/users/forms/filtersets.py | 8 +++----- 8 files changed, 8 insertions(+), 13 deletions(-) delete mode 100644 netbox/extras/admin.py rename netbox/{extras => netbox}/forms/mixins.py (100%) diff --git a/netbox/core/forms/filtersets.py b/netbox/core/forms/filtersets.py index a567a9fed..14f0fb6ed 100644 --- a/netbox/core/forms/filtersets.py +++ b/netbox/core/forms/filtersets.py @@ -4,8 +4,8 @@ from django.utils.translation import gettext_lazy as _ from core.choices import * from core.models import * -from extras.forms.mixins import SavedFiltersMixin from netbox.forms import NetBoxModelFilterSetForm +from netbox.forms.mixins import SavedFiltersMixin from netbox.utils import get_data_backend_choices from utilities.forms import BOOLEAN_WITH_BLANK_CHOICES, FilterForm from utilities.forms.fields import ContentTypeChoiceField, DynamicModelMultipleChoiceField diff --git a/netbox/dcim/forms/bulk_create.py b/netbox/dcim/forms/bulk_create.py index 02aa5a3e4..2a84a9a51 100644 --- a/netbox/dcim/forms/bulk_create.py +++ b/netbox/dcim/forms/bulk_create.py @@ -1,9 +1,9 @@ from django import forms +from django.utils.translation import gettext_lazy as _ from dcim.models import * -from django.utils.translation import gettext_lazy as _ -from extras.forms import CustomFieldsMixin from extras.models import Tag +from netbox.forms.mixins import CustomFieldsMixin from utilities.forms import BootstrapMixin, form_from_model from utilities.forms.fields import DynamicModelMultipleChoiceField, ExpandableNameField from .object_create import ComponentCreateForm diff --git a/netbox/extras/admin.py b/netbox/extras/admin.py deleted file mode 100644 index 6e82ffc75..000000000 --- a/netbox/extras/admin.py +++ /dev/null @@ -1,2 +0,0 @@ -# TODO: Removing this import triggers an import loop due to how form mixins are currently organized -from .forms import ConfigRevisionForm diff --git a/netbox/extras/forms/__init__.py b/netbox/extras/forms/__init__.py index e203bee46..8bebaeec2 100644 --- a/netbox/extras/forms/__init__.py +++ b/netbox/extras/forms/__init__.py @@ -3,5 +3,4 @@ from .filtersets import * from .bulk_edit import * from .bulk_import import * from .misc import * -from .mixins import * from .scripts import * diff --git a/netbox/extras/forms/filtersets.py b/netbox/extras/forms/filtersets.py index 5da3ba1e6..28aefa685 100644 --- a/netbox/extras/forms/filtersets.py +++ b/netbox/extras/forms/filtersets.py @@ -7,6 +7,7 @@ from dcim.models import DeviceRole, DeviceType, Location, Platform, Region, Site from extras.choices import * from extras.models import * from netbox.forms.base import NetBoxModelFilterSetForm +from netbox.forms.mixins import SavedFiltersMixin from tenancy.models import Tenant, TenantGroup from utilities.forms import BOOLEAN_WITH_BLANK_CHOICES, FilterForm, add_blank_choice from utilities.forms.fields import ( @@ -14,7 +15,6 @@ from utilities.forms.fields import ( ) from utilities.forms.widgets import APISelectMultiple, DateTimePicker from virtualization.models import Cluster, ClusterGroup, ClusterType -from .mixins import * __all__ = ( 'ConfigContextFilterForm', diff --git a/netbox/netbox/forms/base.py b/netbox/netbox/forms/base.py index b51efe9c0..5b13dc531 100644 --- a/netbox/netbox/forms/base.py +++ b/netbox/netbox/forms/base.py @@ -4,11 +4,11 @@ from django.db.models import Q from django.utils.translation import gettext_lazy as _ from extras.choices import * -from extras.forms.mixins import CustomFieldsMixin, SavedFiltersMixin, TagsMixin from extras.models import CustomField, Tag from utilities.forms import CSVModelForm from utilities.forms.fields import CSVModelMultipleChoiceField, DynamicModelMultipleChoiceField from utilities.forms.mixins import BootstrapMixin, CheckLastUpdatedMixin +from .mixins import CustomFieldsMixin, SavedFiltersMixin, TagsMixin __all__ = ( 'NetBoxModelForm', diff --git a/netbox/extras/forms/mixins.py b/netbox/netbox/forms/mixins.py similarity index 100% rename from netbox/extras/forms/mixins.py rename to netbox/netbox/forms/mixins.py diff --git a/netbox/users/forms/filtersets.py b/netbox/users/forms/filtersets.py index ff56cbc4c..4ae2bd729 100644 --- a/netbox/users/forms/filtersets.py +++ b/netbox/users/forms/filtersets.py @@ -1,14 +1,12 @@ from django import forms -from extras.forms.mixins import SavedFiltersMixin -from utilities.forms import FilterForm -from users.models import Token from django.contrib.auth import get_user_model from django.contrib.auth.models import Group from django.utils.translation import gettext_lazy as _ from netbox.forms import NetBoxModelFilterSetForm -from users.models import NetBoxGroup, NetBoxUser, ObjectPermission -from utilities.forms import BOOLEAN_WITH_BLANK_CHOICES +from netbox.forms.mixins import SavedFiltersMixin +from users.models import NetBoxGroup, NetBoxUser, ObjectPermission, Token +from utilities.forms import BOOLEAN_WITH_BLANK_CHOICES, FilterForm from utilities.forms.fields import DynamicModelMultipleChoiceField from utilities.forms.widgets import DateTimePicker