Django Filter
Django-filter is a reusable Django application for allowing users to filter querysets dynamically.
Full documentation on read the docs.
Requirements
Python 2.7, 3.3, 3.4, 3.5
Django 1.8, 1.9, 1.10
DRF 3.3 (Django 1.8 only), 3.4
Installation
Install using pip:
pip install django-filter
Or clone the repo and add to your PYTHONPATH:
git clone git@github.com:carltongibson/django-filter.git
Usage
Django-filter can be used for generating interfaces similar to the Django admin’s list_filter interface. It has an API very similar to Django’s ModelForms. For example, if you had a Product model you could have a filterset for it with the code:
import django_filters
class ProductFilter(django_filters.FilterSet):
class Meta:
model = Product
fields = ['name', 'price', 'manufacturer']
And then in your view you could do:
def product_list(request):
filter = ProductFilter(request.GET, queryset=Product.objects.all())
return render(request, 'my_app/template.html', {'filter': filter})
Django-filters additionally supports specifying FilterSet fields using a dictionary to specify filters with lookup types:
import django_filters
class ProductFilter(django_filters.FilterSet):
class Meta:
model = Product
fields = {'name': ['exact', 'icontains'],
'price': ['exact', 'gte', 'lte'],
}
The filters will be available as ‘name’, ‘name__icontains’, ‘price’, ‘price__gte’, and ‘price__lte’ in the above example.
Support
If you have questions about usage or development you can join the mailing list.
Metadata
Release files for django-filter 0.15.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django-filter-0.15.1.tar.gz | 188.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_filter-0.15.1-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 236.5 kB
Release files / django-filter-0.15.1.tar.gz
| Download URL | django-filter-0.15.1.tar.gz |
|---|---|
| Size | 188.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c5b56ad92c78d9aa04e4b3614f403fb616f228ae9af3be81ebb88842cbb5183f
|
|
BLAKE2b-256 checksum How to use checksums |
52fa2bfa0dddca009b51efc9a94cda64875d99717f3ab6ff8c250a039b3164f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / django_filter-0.15.1-py2.py3-none-any.whl
| Download URL | django_filter-0.15.1-py2.py3-none-any.whl |
|---|---|
| Size | 48.2 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
eff3c6698d565b3476374d870f86c8ded141933e73e66c674d5c01ceea11fd24
|
|
BLAKE2b-256 checksum How to use checksums |
954774fb8e47c3c0ad8b46ebfbbda57d30891f44ae7de9aba911e4aa304998f9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |