1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Introduce CSVModelChoiceField to provide better validation for CSV model choices

This commit is contained in:
Jeremy Stretch
2020-05-06 09:43:10 -04:00
parent 607744813a
commit 70d0a5f665
7 changed files with 113 additions and 99 deletions

View File

@@ -8,8 +8,8 @@ from extras.forms import (
AddRemoveTagsForm, CustomFieldBulkEditForm, CustomFieldFilterForm, CustomFieldModelForm, CustomFieldModelCSVForm,
)
from utilities.forms import (
APISelectMultiple, BootstrapMixin, CSVModelForm, DynamicModelChoiceField, DynamicModelMultipleChoiceField,
SlugField, StaticSelect2Multiple, TagFilterField,
APISelectMultiple, BootstrapMixin, CSVModelChoiceField, CSVModelForm, DynamicModelChoiceField,
DynamicModelMultipleChoiceField, SlugField, StaticSelect2Multiple, TagFilterField,
)
from .constants import *
from .models import Secret, SecretRole, UserKey
@@ -117,7 +117,7 @@ class SecretForm(BootstrapMixin, CustomFieldModelForm):
class SecretCSVForm(CustomFieldModelCSVForm):
device = forms.ModelChoiceField(
device = CSVModelChoiceField(
queryset=Device.objects.all(),
to_field_name='name',
help_text='Assigned device',
@@ -125,7 +125,7 @@ class SecretCSVForm(CustomFieldModelCSVForm):
'invalid_choice': 'Device not found.',
}
)
role = forms.ModelChoiceField(
role = CSVModelChoiceField(
queryset=SecretRole.objects.all(),
to_field_name='name',
help_text='Assigned role',