Extra filters for django admin site
Project description
django-adminfilters
Collection of extra filters for the Django admin site
Demo can be found at https://django-adminfilters.herokuapp.com/demo/artist/
https://user-images.githubusercontent.com/27282/153727131-d875f946-a8a8-4d89-be83-1d8cb5c9391a.mp4
Filters
- Autocomplete
- AutocompleteFilter
- Simple
- ValueFilter
- Combobox
- AllValuesComboFilter
- RelatedFieldComboFilter
- ChoicesFieldComboFilter
- Dates
- DateRangeFilter
- Radio
- AllValuesRadioFilter
- RelatedFieldRadioFilter
- ChoicesFieldRadioFilter
- BooleanRadioFilter
- Checkbox
- RelatedFieldCheckBoxFilter
- Multiple
- MultiValueFilter
- ManyToMany
- IntersectionFieldListFilter
- UnionFieldListFilter
- JSON
- JsonFieldFilter
- Number
- NumberFilter
- Special
- QueryStringFilter
- DjangoLookupFilter
- PermissionPrefixFilter
FYI
Filters management (save/retrieve), is handled by an optional application adminfilters.depot
that,
due to the Django filters internal design, it uses GET method to save filter definition to the database.
When you use FilterDepotManager
to save a filter, the call is idempotent but not safe.
Usage examples
class MyModel(models.Model):
index = models.CharField(max_length=255)
name = models.CharField(max_length=255)
age = models.IntegerField()
flag = models.CharField(default="1", choices=(("0", "Flag 1"), ("1", "Flag 2"))
household = models.ForeignKey('Household')
custom = JSONField(default=dict, blank=True)
class MyModelAdmin(ModelAdmin):
list_filter = (
FilterDepotManager, # needs `adminfilters.depot` app
QueryStringFilter,
DjangoLookupFilter,
("custom", JsonFieldFilter.factory(can_negate=False, options=True)),
("flag", ChoicesFieldComboFilter),
('household', AutoCompleteFilter)
('name', ValueFilter.factory(lookup='istartswith'),
("age", NumberFilter),
)
Run demo app
$ git clone https://github.com/saxix/django-adminfilters.git
$ cd django-adminfilters
$ python3 -m venv .venv
$ source .venv/bin/activate
$ make develop
$ make demo
Project links
- Project home page: https://github.com/saxix/django-adminfilters
- Download: http://pypi.python.org/pypi/django-adminfilters/
- Documentation: https://django-adminfilters.readthedocs.io/en/latest/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django-adminfilters-2.3.1.tar.gz
(55.6 kB
view details)
File details
Details for the file django-adminfilters-2.3.1.tar.gz
.
File metadata
- Download URL: django-adminfilters-2.3.1.tar.gz
- Upload date:
- Size: 55.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a69cceb41aa7e7581aae49ee29131d5d6985deab1e2d3fd6307e8124017e5b05 |
|
MD5 | 5ef51138c608bba44629b3e9c9ddda2b |
|
BLAKE2b-256 | 430bacdebb7b85c99353180652298c014df65d1db21cbd14f2e36ee81a99d4a7 |