У меня есть пользовательский фильтр в интерфейсе администратора DjangoКак создать mutliple select в пользовательской форме Django?
class ClipExcludeRightsFilter(ListFilter):
title = 'rights'
parameter_name = 'exclude_rights'
template = 'admin_mod/filters/exclude_rights.html'
def lookups(self, request, model_admin):
result = (
('avod', 'avod'),
('svod', 'svod'),
('est', 'est'),
('tvod', 'tvod')
)
return result
def queryset(self, request, queryset):
if self.value():
urls_owner = ClipRestriction.objects.exclude(vod_system=self.value()).values_list('clip_id', flat=True)
return queryset.filter(
pk__in=urls_owner
)
И интерфейс возвращает список (выбор), и я могу выбрать только один атрибут. Но мне нужно реализовать множественный выбор. Я обнаружил, что шаблон по умолчанию для этого шаблона/администратор/filter.html
{% load i18n %}
<h3>{% blocktrans with filter_title=title|capfirst %} By {{ filter_title }} {% endblocktrans %}</h3>
<select class="combobox">
{% for choice in choices %}
<option{% if choice.selected %} selected{% endif %} value="{{ choice.query_string|iriencode }}" >{{ choice.display }}</option>
{% endfor %}
</select>
Может быть, мне нужно, чтобы написать свой собственный шаблон, но не знает, как к (мне нужно фильтровать выбранные опции мгновенно).
Только многие для многих поддерживают множественные варианты. – marin