Как добавить значение в набор запросов? - PullRequest
1 голос
/ 11 апреля 2020

Мне нужно добавить поле «Все» для выбора ModelMultipleChoiceFilter. Я не знаю, как добавить пользовательское значение ('All') в набор запросов.

В MultipleChoiceFilter я просто использую:

shops = Shop.objects.filter(is_active=True)
SHOP_CHOICES = [('All', 'All')]
for x in shops:
    SHOP_CHOICES.append((x.address, x))
SHOP_CHOICES = tuple(SHOP_CHOICES)

, но в ModelMultipleChoiceFilter у меня вместо кортежа набор запросов.

Мой фильтр:

def departments(request):
    if request is None:
        return Shop.objects.none()

    curr_user = request.user

    return Shop.objects.filter(is_active=True, custom_user=curr_user)


class ShopFilter(django_filters.FilterSet):
    address = django_filters.ModelMultipleChoiceFilter(queryset=departments)

1 Ответ

0 голосов
/ 13 апреля 2020

Я решаю эту проблему, используя jquery и html

<script>
    $('#id_address').prepend(new Option('All', 'All'))
</script>
...