2016-12-05 1 views
0

У меня есть пользовательский фильтр в интерфейсе администратора 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> 

Может быть, мне нужно, чтобы написать свой собственный шаблон, но не знает, как к (мне нужно фильтровать выбранные опции мгновенно).

+0

Только многие для многих поддерживают множественные варианты. – marin

ответ

0

Я только что выбрал все опции: выбрал с помощью jquery, а затем передал его как параметр в моем URL-адресе.

Смежные вопросы