Skip to content

Django-more-admin-filters is a collection of django admin filters with a focus on filters using dropdown widgets, multiple choice filters and filters working with annotated attributes.

License

thomst/django-more-admin-filters

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to django-more-admin-filters

Run tests for django-more-admin-filters

coveralls badge

Description

Django-more-admin-filters is a collection of django admin filters with a focus on filters using dropdown widgets, multiple choice filters and filters working with annotated attributes.

Installation

Install from pypi.org:

pip install django-more-admin-filters

Add more_admin_filters to your installed apps:

INSTALLED_APPS = [
    'more_admin_filters',
    ...
]

Use the filter classes with your ModelAdmin:

from more_admin_filters import MultiSelectDropdownFilter

class MyModelAdmin(admin.ModelAdmin):
    ...
    list_filter = [
        ('myfield', MultiSelectDropdownFilter),
        ...
    ]

Since the ModelAdmin routine to initialize the list filters doesn't work with annotated attributes the usage for an annotation filter is a little bit special. The filter class needs to be equipped with the attribute's name:

MyModelAdmin(admin.ModelAdmin):
list_filter = [
    BooleanAnnotationFilter.init('my_annotated_attribute'),
    ...
]

Filter classes

  • DropdownFilter

    Dropdown filter for all kind of fields.

  • ChoicesDropdownFilter

    Dropdown filter for fields using choices.

  • RelatedDropdownFilter

    Dropdown filter for relation fields.

  • RelatedOnlyDropdownFilter

    Dropdown filter for relation fields using limit_choices_to.

  • MultiSelectFilter

    Multi select filter for all kind of fields.

  • MultiSelectRelatedFilter

    Multi select filter for relation fields.

  • MultiSelectRelatedOnlyFilter

    Multi select filter for related fields with choices limited to the objects involved in that relation

  • MultiSelectDropdownFilter

    Multi select dropdown filter for all kind of fields.

  • MultiSelectRelatedDropdownFilter

    Multi select dropdown filter for relation fields.

  • BooleanAnnotationFilter

    Filter for annotated boolean-attributes.

Note

More kind of annotation filters will be added in future versions.

About

Django-more-admin-filters is a collection of django admin filters with a focus on filters using dropdown widgets, multiple choice filters and filters working with annotated attributes.

Resources

License

Stars

Watchers

Forks

Packages

No packages published