【发布时间】:2019-03-15 22:59:13
【问题描述】:
TL;DR; 我想用bootstrap-select with keywords 替换我的Django 表单中的标准引导下拉菜单。有没有办法让{% 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>
有没有办法在不手动渲染表单的情况下做到这一点?
【问题讨论】:
标签: django-forms django-templates bootstrap-select