mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Move SyncedDataMixin from extras to core
This commit is contained in:
25
netbox/core/forms/mixins.py
Normal file
25
netbox/core/forms/mixins.py
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
from django import forms
|
||||||
|
from django.utils.translation import gettext as _
|
||||||
|
|
||||||
|
from core.models import DataFile, DataSource
|
||||||
|
from utilities.forms.fields import DynamicModelChoiceField
|
||||||
|
|
||||||
|
__all__ = (
|
||||||
|
'SyncedDataMixin',
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class SyncedDataMixin(forms.Form):
|
||||||
|
data_source = DynamicModelChoiceField(
|
||||||
|
queryset=DataSource.objects.all(),
|
||||||
|
required=False,
|
||||||
|
label=_('Data source')
|
||||||
|
)
|
||||||
|
data_file = DynamicModelChoiceField(
|
||||||
|
queryset=DataFile.objects.all(),
|
||||||
|
required=False,
|
||||||
|
label=_('File'),
|
||||||
|
query_params={
|
||||||
|
'source_id': '$data_source',
|
||||||
|
}
|
||||||
|
)
|
@ -2,8 +2,8 @@ import copy
|
|||||||
|
|
||||||
from django import forms
|
from django import forms
|
||||||
|
|
||||||
|
from core.forms.mixins import SyncedDataMixin
|
||||||
from core.models import *
|
from core.models import *
|
||||||
from extras.forms.mixins import SyncedDataMixin
|
|
||||||
from netbox.forms import NetBoxModelForm
|
from netbox.forms import NetBoxModelForm
|
||||||
from netbox.registry import registry
|
from netbox.registry import registry
|
||||||
from utilities.forms import get_field_value
|
from utilities.forms import get_field_value
|
||||||
|
@ -1,16 +1,14 @@
|
|||||||
from django.contrib.contenttypes.models import ContentType
|
|
||||||
from django import forms
|
from django import forms
|
||||||
|
from django.contrib.contenttypes.models import ContentType
|
||||||
from django.utils.translation import gettext as _
|
from django.utils.translation import gettext as _
|
||||||
|
|
||||||
from core.models import DataFile, DataSource
|
|
||||||
from extras.models import *
|
|
||||||
from extras.choices import CustomFieldVisibilityChoices
|
from extras.choices import CustomFieldVisibilityChoices
|
||||||
from utilities.forms.fields import DynamicModelChoiceField, DynamicModelMultipleChoiceField
|
from extras.models import *
|
||||||
|
from utilities.forms.fields import DynamicModelMultipleChoiceField
|
||||||
|
|
||||||
__all__ = (
|
__all__ = (
|
||||||
'CustomFieldsMixin',
|
'CustomFieldsMixin',
|
||||||
'SavedFiltersMixin',
|
'SavedFiltersMixin',
|
||||||
'SyncedDataMixin',
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -74,19 +72,3 @@ class SavedFiltersMixin(forms.Form):
|
|||||||
'usable': True,
|
'usable': True,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class SyncedDataMixin(forms.Form):
|
|
||||||
data_source = DynamicModelChoiceField(
|
|
||||||
queryset=DataSource.objects.all(),
|
|
||||||
required=False,
|
|
||||||
label=_('Data source')
|
|
||||||
)
|
|
||||||
data_file = DynamicModelChoiceField(
|
|
||||||
queryset=DataFile.objects.all(),
|
|
||||||
required=False,
|
|
||||||
label=_('File'),
|
|
||||||
query_params={
|
|
||||||
'source_id': '$data_source',
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
@ -5,9 +5,9 @@ from django.db.models import Q
|
|||||||
from django.contrib.contenttypes.models import ContentType
|
from django.contrib.contenttypes.models import ContentType
|
||||||
from django.utils.translation import gettext as _
|
from django.utils.translation import gettext as _
|
||||||
|
|
||||||
|
from core.forms.mixins import SyncedDataMixin
|
||||||
from dcim.models import DeviceRole, DeviceType, Location, Platform, Region, Site, SiteGroup
|
from dcim.models import DeviceRole, DeviceType, Location, Platform, Region, Site, SiteGroup
|
||||||
from extras.choices import *
|
from extras.choices import *
|
||||||
from extras.forms.mixins import SyncedDataMixin
|
|
||||||
from extras.models import *
|
from extras.models import *
|
||||||
from extras.utils import FeatureQuery
|
from extras.utils import FeatureQuery
|
||||||
from netbox.forms import NetBoxModelForm
|
from netbox.forms import NetBoxModelForm
|
||||||
|
@ -6,7 +6,7 @@ import yaml
|
|||||||
from django import forms
|
from django import forms
|
||||||
from django.utils.translation import gettext as _
|
from django.utils.translation import gettext as _
|
||||||
|
|
||||||
from extras.forms.mixins import SyncedDataMixin
|
from core.forms.mixins import SyncedDataMixin
|
||||||
from utilities.choices import ImportFormatChoices
|
from utilities.choices import ImportFormatChoices
|
||||||
from utilities.forms.utils import parse_csv
|
from utilities.forms.utils import parse_csv
|
||||||
from ..choices import ImportMethodChoices
|
from ..choices import ImportMethodChoices
|
||||||
|
Reference in New Issue
Block a user