IsNullFieldListFilter

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from django.utils.translation import ugettext_lazy as _
from django.contrib.admin import FieldListFilter

class IsNullFieldListFilter(FieldListFilter):
    def __init__(self, field, request, params, model, model_admin, field_path):
        self.lookup_kwarg = '%s__isnull' % field_path
        self.lookup_val = request.GET.get(self.lookup_kwarg, None)
        super(IsNullFieldListFilter, self).__init__(field,
            request, params, model, model_admin, field_path)

    def expected_parameters(self):
        return [self.lookup_kwarg]

    def choices(self, cl):
        for lookup, title in (
                (None, _('All')),
                ('False', _('Yes')),
                ('True', _('No'))):
            yield {
                'selected': self.lookup_val == lookup,
                'query_string': cl.get_query_string({
                        self.lookup_kwarg: lookup,
                    }),
                'display': title,
            }

More like this

  1. easy admin registration by alia_khouri 5 years, 7 months ago
  2. Limit ForeignKey filter values to those that have a relationship with current model by overclocked 3 years, 5 months ago
  3. template filter to check login status by tamizhgeek 2 years, 11 months ago
  4. Clear Django Cache by girasquid 5 years, 7 months ago
  5. Custom change_list filter based on SimpleListFilter shows only referenced (related, used) values by darklow 1 year, 2 months ago

Comments

(Forgotten your password?)