mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-01 05:16:26 -06:00
Revert changes from 89b7f3f
This commit is contained in:
parent
d0208d473d
commit
809de8683b
@ -131,10 +131,10 @@ class ProviderFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
|
||||
site_id = DynamicModelMultipleChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region_id'},
|
||||
{'accessor': 'site_group_id', 'field_name': 'site_group_id'}
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region_id',
|
||||
'site_group_id': '$site_group_id',
|
||||
},
|
||||
label=_('Site'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -405,9 +405,9 @@ class CircuitFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilte
|
||||
provider_network_id = DynamicModelMultipleChoiceField(
|
||||
queryset=ProviderNetwork.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'provider_id', 'field_name': 'provider_id'}
|
||||
],
|
||||
query_params={
|
||||
'provider_id': '$provider_id'
|
||||
},
|
||||
label=_('Provider network'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -431,10 +431,10 @@ class CircuitFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilte
|
||||
site_id = DynamicModelMultipleChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region_id'},
|
||||
{'accessor': 'site_group_id', 'field_name': 'site_group_id'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region_id',
|
||||
'site_group_id': '$site_group_id',
|
||||
},
|
||||
label=_('Site'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -467,10 +467,10 @@ class CircuitTerminationForm(BootstrapMixin, forms.ModelForm):
|
||||
)
|
||||
site = DynamicModelChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'site_group_id', 'field_name': 'site_group'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$site_group',
|
||||
},
|
||||
required=False
|
||||
)
|
||||
provider_network = DynamicModelChoiceField(
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -181,19 +181,16 @@ class ObjectVar(ScriptVariable):
|
||||
|
||||
:param model: The NetBox model being referenced
|
||||
:param query_params: A dictionary of additional query parameters to attach when making REST API requests (optional)
|
||||
:param filter_fields: A dictionary or list of dictionaries that define a related
|
||||
field. Example: `{'accessor': 'group_id', 'field_name': 'tenant_group'}` (optional)
|
||||
:param null_option: The label to use as a "null" selection option (optional)
|
||||
"""
|
||||
form_field = DynamicModelChoiceField
|
||||
|
||||
def __init__(self, model, query_params=None, filter_fields=None, null_option=None, *args, **kwargs):
|
||||
def __init__(self, model, query_params=None, null_option=None, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
self.field_attrs.update({
|
||||
'queryset': model.objects.all(),
|
||||
'query_params': query_params,
|
||||
'filter_fields': filter_fields,
|
||||
'null_option': null_option,
|
||||
})
|
||||
|
||||
|
@ -441,19 +441,19 @@ class PrefixForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'site_group'},
|
||||
]
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$site_group',
|
||||
}
|
||||
)
|
||||
vlan_group = DynamicModelChoiceField(
|
||||
queryset=VLANGroup.objects.all(),
|
||||
required=False,
|
||||
label='VLAN group',
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
],
|
||||
query_params={
|
||||
'site_id': '$site'
|
||||
},
|
||||
initial_params={
|
||||
'vlans': '$vlan'
|
||||
}
|
||||
@ -462,10 +462,10 @@ class PrefixForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
queryset=VLAN.objects.all(),
|
||||
required=False,
|
||||
label='VLAN',
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
{'accessor': 'group_id', 'field_name': 'vlan_group'},
|
||||
]
|
||||
query_params={
|
||||
'site_id': '$site',
|
||||
'group_id': '$vlan_group',
|
||||
}
|
||||
)
|
||||
role = DynamicModelChoiceField(
|
||||
queryset=Role.objects.all(),
|
||||
@ -577,10 +577,10 @@ class PrefixBulkEditForm(BootstrapMixin, AddRemoveTagsForm, CustomFieldModelBulk
|
||||
site = DynamicModelChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'site_group'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$site_group',
|
||||
}
|
||||
)
|
||||
vrf = DynamicModelChoiceField(
|
||||
queryset=VRF.objects.all(),
|
||||
@ -698,9 +698,9 @@ class PrefixFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilter
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region_id'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region_id'
|
||||
},
|
||||
label=_('Site'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -886,9 +886,9 @@ class IPAddressForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
interface = DynamicModelChoiceField(
|
||||
queryset=Interface.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'device_id', 'field_name': 'device'},
|
||||
],
|
||||
query_params={
|
||||
'device_id': '$device'
|
||||
}
|
||||
)
|
||||
virtual_machine = DynamicModelChoiceField(
|
||||
queryset=VirtualMachine.objects.all(),
|
||||
@ -901,9 +901,9 @@ class IPAddressForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
queryset=VMInterface.objects.all(),
|
||||
required=False,
|
||||
label='Interface',
|
||||
filter_fields=[
|
||||
{'accessor': 'virtual_machine_id', 'field_name': 'virtual_machine'},
|
||||
]
|
||||
query_params={
|
||||
'virtual_machine_id': '$virtual_machine'
|
||||
}
|
||||
)
|
||||
vrf = DynamicModelChoiceField(
|
||||
queryset=VRF.objects.all(),
|
||||
@ -930,28 +930,28 @@ class IPAddressForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
label='Site',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'nat_region'},
|
||||
{'accessor': 'group_id', 'field_name': 'nat_site_group'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$nat_region',
|
||||
'group_id': '$nat_site_group',
|
||||
}
|
||||
)
|
||||
nat_rack = DynamicModelChoiceField(
|
||||
queryset=Rack.objects.all(),
|
||||
required=False,
|
||||
label='Rack',
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
],
|
||||
query_params={
|
||||
'site_id': '$site'
|
||||
}
|
||||
)
|
||||
nat_device = DynamicModelChoiceField(
|
||||
queryset=Device.objects.all(),
|
||||
required=False,
|
||||
label='Device',
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
{'accessor': 'rack_id', 'field_name': 'nat_rack'},
|
||||
]
|
||||
query_params={
|
||||
'site_id': '$site',
|
||||
'rack_id': '$nat_rack',
|
||||
}
|
||||
)
|
||||
nat_cluster = DynamicModelChoiceField(
|
||||
queryset=Cluster.objects.all(),
|
||||
@ -962,9 +962,9 @@ class IPAddressForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
queryset=VirtualMachine.objects.all(),
|
||||
required=False,
|
||||
label='Virtual Machine',
|
||||
filter_fields=[
|
||||
{'accessor': 'cluster_id', 'field_name': 'nat_cluster'},
|
||||
]
|
||||
query_params={
|
||||
'cluster_id': '$nat_cluster',
|
||||
}
|
||||
)
|
||||
nat_vrf = DynamicModelChoiceField(
|
||||
queryset=VRF.objects.all(),
|
||||
@ -975,11 +975,11 @@ class IPAddressForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
queryset=IPAddress.objects.all(),
|
||||
required=False,
|
||||
label='IP Address',
|
||||
filter_fields=[
|
||||
{'accessor': 'device_id', 'field_name': 'nat_device'},
|
||||
{'accessor': 'virtual_machine_id', 'field_name': 'nat_virtual_machine'},
|
||||
{'accessor': 'vrf_id', 'field_name': 'nat_vrf'},
|
||||
],
|
||||
query_params={
|
||||
'device_id': '$nat_device',
|
||||
'virtual_machine_id': '$nat_virtual_machine',
|
||||
'vrf_id': '$nat_vrf',
|
||||
}
|
||||
)
|
||||
primary_for_parent = forms.BooleanField(
|
||||
required=False,
|
||||
@ -1367,10 +1367,10 @@ class VLANGroupForm(BootstrapMixin, CustomFieldModelForm):
|
||||
initial_params={
|
||||
'locations': '$location'
|
||||
},
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'sitegroup'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$sitegroup',
|
||||
}
|
||||
)
|
||||
location = DynamicModelChoiceField(
|
||||
queryset=Location.objects.all(),
|
||||
@ -1378,17 +1378,17 @@ class VLANGroupForm(BootstrapMixin, CustomFieldModelForm):
|
||||
initial_params={
|
||||
'racks': '$rack'
|
||||
},
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
]
|
||||
query_params={
|
||||
'site_id': '$site',
|
||||
}
|
||||
)
|
||||
rack = DynamicModelChoiceField(
|
||||
queryset=Rack.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
{'accessor': 'location_id', 'field_name': 'location'},
|
||||
],
|
||||
query_params={
|
||||
'site_id': '$site',
|
||||
'location_id': '$location',
|
||||
}
|
||||
)
|
||||
clustergroup = DynamicModelChoiceField(
|
||||
queryset=ClusterGroup.objects.all(),
|
||||
@ -1401,9 +1401,9 @@ class VLANGroupForm(BootstrapMixin, CustomFieldModelForm):
|
||||
cluster = DynamicModelChoiceField(
|
||||
queryset=Cluster.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'group_id', 'field_name': 'clustergroup'},
|
||||
],
|
||||
query_params={
|
||||
'group_id': '$clustergroup',
|
||||
}
|
||||
)
|
||||
slug = SlugField()
|
||||
|
||||
@ -1543,9 +1543,9 @@ class VLANForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
group = DynamicModelChoiceField(
|
||||
queryset=VLANGroup.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'scope_type', 'field_name': 'scope_type'},
|
||||
],
|
||||
query_params={
|
||||
'scope_type': '$scope_type',
|
||||
},
|
||||
label='VLAN Group'
|
||||
)
|
||||
|
||||
@ -1570,10 +1570,10 @@ class VLANForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'sitegroup'},
|
||||
]
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$sitegroup',
|
||||
}
|
||||
)
|
||||
|
||||
# Other fields
|
||||
@ -1659,17 +1659,17 @@ class VLANBulkEditForm(BootstrapMixin, AddRemoveTagsForm, CustomFieldModelBulkEd
|
||||
site = DynamicModelChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'site_group'},
|
||||
]
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$site_group',
|
||||
}
|
||||
)
|
||||
group = DynamicModelChoiceField(
|
||||
queryset=VLANGroup.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
]
|
||||
query_params={
|
||||
'site_id': '$site'
|
||||
}
|
||||
)
|
||||
tenant = DynamicModelChoiceField(
|
||||
queryset=Tenant.objects.all(),
|
||||
@ -1724,9 +1724,9 @@ class VLANFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterFo
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
],
|
||||
query_params={
|
||||
'region': '$region'
|
||||
},
|
||||
label=_('Site'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -1734,9 +1734,9 @@ class VLANFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterFo
|
||||
queryset=VLANGroup.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
],
|
||||
query_params={
|
||||
'region': '$region'
|
||||
},
|
||||
label=_('VLAN group'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
|
@ -170,9 +170,9 @@ class TenancyForm(forms.Form):
|
||||
tenant = DynamicModelChoiceField(
|
||||
queryset=Tenant.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'group_id', 'field_name': 'tenant_group'}
|
||||
]
|
||||
query_params={
|
||||
'group_id': '$tenant_group'
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@ -188,9 +188,9 @@ class TenancyFilterForm(forms.Form):
|
||||
queryset=Tenant.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'group_id', 'field_name': 'tenant_group'}
|
||||
],
|
||||
query_params={
|
||||
'group_id': '$tenant_group_id'
|
||||
},
|
||||
label=_('Tenant'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
|
@ -371,20 +371,17 @@ class DynamicModelChoiceMixin:
|
||||
choice (optional)
|
||||
:param str fetch_trigger: The event type which will cause the select element to
|
||||
fetch data from the API. Must be 'load', 'open', or 'collapse'. (optional)
|
||||
:param filter_fields: A dictionary or list of dictionaries that define a related
|
||||
field. Example: `{'accessor': 'group_id', 'field_name': 'tenant_group'}` (optional)
|
||||
"""
|
||||
filter = django_filters.ModelChoiceFilter
|
||||
widget = widgets.APISelect
|
||||
|
||||
def __init__(self, query_params=None, initial_params=None, null_option=None, disabled_indicator=None, fetch_trigger=None,
|
||||
filter_fields=[], *args, **kwargs):
|
||||
*args, **kwargs):
|
||||
self.query_params = query_params or {}
|
||||
self.initial_params = initial_params or {}
|
||||
self.null_option = null_option
|
||||
self.disabled_indicator = disabled_indicator
|
||||
self.fetch_trigger = fetch_trigger
|
||||
self.filter_fields = filter_fields
|
||||
|
||||
# to_field_name is set by ModelChoiceField.__init__(), but we need to set it early for reference
|
||||
# by widget_attrs()
|
||||
@ -412,12 +409,8 @@ class DynamicModelChoiceMixin:
|
||||
attrs['data-fetch-trigger'] = self.fetch_trigger
|
||||
|
||||
# Attach any static query parameters
|
||||
for key, value in self.query_params.items():
|
||||
widget.add_query_param(key, value)
|
||||
|
||||
# Attach any dynamic query parameters
|
||||
if self.filter_fields is not None and len(self.filter_fields) > 0:
|
||||
widget.add_filter_fields(self.filter_fields)
|
||||
if (len(self.query_params) > 0):
|
||||
widget.add_query_params(self.query_params)
|
||||
|
||||
return attrs
|
||||
|
||||
|
@ -126,10 +126,10 @@ class ClusterForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
site = DynamicModelChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'site_group'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$site_group',
|
||||
}
|
||||
)
|
||||
comments = CommentField()
|
||||
tags = DynamicModelMultipleChoiceField(
|
||||
@ -206,10 +206,10 @@ class ClusterBulkEditForm(BootstrapMixin, AddRemoveTagsForm, CustomFieldModelBul
|
||||
site = DynamicModelChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'site_group'},
|
||||
]
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$site_group',
|
||||
}
|
||||
)
|
||||
comments = CommentField(
|
||||
widget=SmallTextarea,
|
||||
@ -260,10 +260,10 @@ class ClusterFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilte
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region_id'},
|
||||
{'accessor': 'site_group_id', 'field_name': 'site_group'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region_id',
|
||||
'site_group_id': '$site_group_id',
|
||||
},
|
||||
label=_('Site'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -291,26 +291,26 @@ class ClusterAddDevicesForm(BootstrapMixin, forms.Form):
|
||||
site = DynamicModelChoiceField(
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region'},
|
||||
{'accessor': 'group_id', 'field_name': 'site_group'},
|
||||
]
|
||||
query_params={
|
||||
'region_id': '$region',
|
||||
'group_id': '$site_group',
|
||||
}
|
||||
)
|
||||
rack = DynamicModelChoiceField(
|
||||
queryset=Rack.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
]
|
||||
query_params={
|
||||
'site_id': '$site'
|
||||
}
|
||||
)
|
||||
devices = DynamicModelMultipleChoiceField(
|
||||
queryset=Device.objects.all(),
|
||||
filter_fields=[
|
||||
{'accessor': 'site_id', 'field_name': 'site'},
|
||||
{'accessor': 'rack_id', 'field_name': 'rack'},
|
||||
{'accessor': 'cluster_id', 'field_name': 'cluster', 'default_value': None},
|
||||
]
|
||||
query_params={
|
||||
'site_id': '$site',
|
||||
'rack_id': '$rack',
|
||||
'cluster_id': 'null',
|
||||
}
|
||||
)
|
||||
|
||||
class Meta:
|
||||
@ -362,16 +362,16 @@ class VirtualMachineForm(BootstrapMixin, TenancyForm, CustomFieldModelForm):
|
||||
)
|
||||
cluster = DynamicModelChoiceField(
|
||||
queryset=Cluster.objects.all(),
|
||||
filter_fields=[
|
||||
{'accessor': 'group_id', 'field_name': 'cluster_group'},
|
||||
]
|
||||
query_params={
|
||||
'group_id': '$cluster_group'
|
||||
}
|
||||
)
|
||||
role = DynamicModelChoiceField(
|
||||
queryset=DeviceRole.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'vm_role', 'field_name': 'vm_role', 'default_value': True},
|
||||
],
|
||||
query_params={
|
||||
"vm_role": "True"
|
||||
}
|
||||
)
|
||||
platform = DynamicModelChoiceField(
|
||||
queryset=Platform.objects.all(),
|
||||
@ -510,9 +510,9 @@ class VirtualMachineBulkEditForm(BootstrapMixin, AddRemoveTagsForm, CustomFieldM
|
||||
vm_role=True
|
||||
),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'vm_role', 'field_name': 'vm_role', 'default_value': True},
|
||||
]
|
||||
query_params={
|
||||
"vm_role": "True"
|
||||
}
|
||||
)
|
||||
tenant = DynamicModelChoiceField(
|
||||
queryset=Tenant.objects.all(),
|
||||
@ -595,10 +595,10 @@ class VirtualMachineFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldMod
|
||||
queryset=Site.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'region_id', 'field_name': 'region_id'},
|
||||
{'accessor': 'group_id', 'field_name': 'site_group_id'},
|
||||
],
|
||||
query_params={
|
||||
'region_id': '$region_id',
|
||||
'group_id': '$site_group_id',
|
||||
},
|
||||
label=_('Site'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -606,9 +606,9 @@ class VirtualMachineFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldMod
|
||||
queryset=DeviceRole.objects.all(),
|
||||
required=False,
|
||||
null_option='None',
|
||||
filter_fields=[
|
||||
{'accessor': 'vm_role', 'field_name': 'vm_role', 'default_value': True},
|
||||
],
|
||||
query_params={
|
||||
'vm_role': "True"
|
||||
},
|
||||
label=_('Role'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
@ -657,17 +657,17 @@ class VMInterfaceForm(BootstrapMixin, InterfaceCommonForm, CustomFieldModelForm)
|
||||
queryset=VLAN.objects.all(),
|
||||
required=False,
|
||||
label='Untagged VLAN',
|
||||
filter_fields=[
|
||||
{'accessor': 'group_id', 'field_name': 'vlan_group'},
|
||||
]
|
||||
query_params={
|
||||
'group_id': '$vlan_group',
|
||||
}
|
||||
)
|
||||
tagged_vlans = DynamicModelMultipleChoiceField(
|
||||
queryset=VLAN.objects.all(),
|
||||
required=False,
|
||||
label='Tagged VLANs',
|
||||
filter_fields=[
|
||||
{'accessor': 'group_id', 'field_name': 'vlan_group'},
|
||||
]
|
||||
query_params={
|
||||
'group_id': '$vlan_group',
|
||||
}
|
||||
)
|
||||
tags = DynamicModelMultipleChoiceField(
|
||||
queryset=Tag.objects.all(),
|
||||
@ -718,9 +718,9 @@ class VMInterfaceCreateForm(BootstrapMixin, CustomFieldsMixin, InterfaceCommonFo
|
||||
parent = DynamicModelChoiceField(
|
||||
queryset=VMInterface.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'virtual_machine_id', 'field_name': 'virtual_machine'},
|
||||
]
|
||||
query_params={
|
||||
'virtual_machine_id': '$virtual_machine',
|
||||
}
|
||||
)
|
||||
mac_address = forms.CharField(
|
||||
required=False,
|
||||
@ -896,9 +896,9 @@ class VMInterfaceFilterForm(BootstrapMixin, forms.Form):
|
||||
virtual_machine_id = DynamicModelMultipleChoiceField(
|
||||
queryset=VirtualMachine.objects.all(),
|
||||
required=False,
|
||||
filter_fields=[
|
||||
{'accessor': 'cluster_id', 'field_name': 'cluster_id'},
|
||||
],
|
||||
query_params={
|
||||
'cluster_id': '$cluster_id'
|
||||
},
|
||||
label=_('Virtual machine'),
|
||||
fetch_trigger='open'
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user