TL; DR; Я хотел бы заменить стандартный раскрывающийся список начальной загрузки в форме Django на bootstrap-select с ключевыми словами . Есть ли способ заставить {% render_field %}
добавить data-tokens=
к каждой опции?
У меня есть страница, где пользователь может пометить человека на фотографии. Соответствующая форма выглядит так:
class AddFaceForm(forms.ModelForm):
class Meta:
model = Face
fields = ('person', ...)
и шаблон формы так:
<form id="face-add-form" action="{% url 'photos:faces' photo.name %}" method="post" class="form-inline" hidden>
{% csrf_token %}
{% render_field form.person class+="form-control dropdown" title="Person"%}
...
Это делает селектор человека стандартным раскрывающимся списком с параметрами, указанными как
<option value="139">XXX</option>
<option value="121">YYY</option>
...
Я могу заменить его выбором начальной загрузки, заменив class+="form-control dropdown"
на class+="selectpicker" data-live-search="true"
. Однако параметры по-прежнему будут перечислены как со стандартным раскрывающимся списком. Для улучшения поиска мне нужно добавить data-tokens
к каждому параметру, например ::
<option value="139" data-tokens="nickname-XXX">XXX</option>
<option value="121" data-tokens="nickname-YYY">YYY</option>
Есть ли способ сделать это без ручной визуализации формы?