diff --git a/netbox/utilities/forms.py b/netbox/utilities/forms.py index 69ee34a60..6813c0553 100644 --- a/netbox/utilities/forms.py +++ b/netbox/utilities/forms.py @@ -8,9 +8,6 @@ from django import forms from django.conf import settings from django.core.urlresolvers import reverse_lazy from django.core.validators import URLValidator -from django.utils.encoding import force_text -from django.utils.html import format_html -from django.utils.safestring import mark_safe COLOR_CHOICES = ( @@ -138,18 +135,16 @@ class SelectWithDisabled(forms.Select): class ArrayFieldSelectMultiple(SelectWithDisabled, forms.SelectMultiple): """ - MultiSelect widgets for a SimpleArrayField. Choices must be populated on the widget. + MultiSelect widget for a SimpleArrayField. Choices must be populated on the widget. """ - def __init__(self, *args, **kwargs): self.delimiter = kwargs.pop('delimiter', ',') super(ArrayFieldSelectMultiple, self).__init__(*args, **kwargs) - def render_options(self, selected_choices): + def optgroups(self, name, value, attrs=None): # Split the delimited string of values into a list - if selected_choices: - selected_choices = selected_choices.split(self.delimiter) - return super(ArrayFieldSelectMultiple, self).render_options(selected_choices) + value = value[0].split(self.delimiter) + return super(ArrayFieldSelectMultiple, self).optgroups(name, value, attrs) def value_from_datadict(self, data, files, name): # Condense the list of selected choices into a delimited string