Django Filters
Adds filters for for Django-specific features, including:
filters.ext.Model: Search for a DB model instance matching the incoming value.
Requirements
Django Filters is known to be compatible with the following Python versions:
3.14
3.13
3.12
Only Django LTS versions are supported.
Installation
This package is an extension for the Filters library, so you can install it as an extra to phx-filters:
pip install phx-filters[django]
If desired, you can install this package separately. This allows you to control the package version separately from phx-filters:
pip install phx-filters-django
Maintainers
To set up a local development environment:
Install uv (once per machine).
Install dependencies:
uv sync
Activate pre-commit hooks:
uv run autohooks activate --mode=pythonpath
Run tests for all supported Python versions using tox:
uv run tox -p
To run tests in the current virtualenv:
uv run python manage.py test
Documentation
Documentation is available on ReadTheDocs.
Source files for this project’s documentation can be found in the phx-filters repo.
Releases
1. One-time setup
Create a PyPI API token if you don’t have one, then install keyring as a global tool and store the token:
uv tool install keyring
uv tool update-shell
keyring set https://upload.pypi.org/legacy/ __token__
Paste your pypi-... token when prompted.
2. Publish to PyPI
Bump the version (updates pyproject.toml and uv.lock):
uv version <version>
Commit the changes:
git add pyproject.toml uv.lock git commit
Publish to PyPI:
uv publish --username __token__
3. Create GitHub Release
Create an annotated tag and push to GitHub:
git tag -a <version> -m "Release <version>" git push origin <version>
<version> must match the updated version number in pyproject.toml.
Go to the Releases page for the repo.
Click Draft a new release.
Select the tag that you created in step 1.
Specify the title of the release (e.g., Django Filters v1.2.3).
Write a description for the release. Make sure to include: - Credit for code contributed by community members. - Significant functionality that was added/changed/removed. - Any backwards-incompatible changes and/or migration instructions. - SHA256 hashes of the build artefacts.
GPG-sign the description for the release (ASCII-armoured).
Attach the build artefacts to the release.
Click Publish release.
Metadata
Release files for phx-filters-django 4.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| phx_filters_django-4.0.0.tar.gz | 61.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| phx_filters_django-4.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 67.7 kB
Release files / phx_filters_django-4.0.0.tar.gz
| Download URL | phx_filters_django-4.0.0.tar.gz |
|---|---|
| Size | 61.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
92bc1bfd0d7a075c65c05c1e4475226abbe6190cdd9201f3489eb1d103c5be2c
|
|
BLAKE2b-256 checksum How to use checksums |
23c73c95e22d032b23e86d36567c95bb11857b369d970660d9708904067da60c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":null,"id":"forky","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / phx_filters_django-4.0.0-py3-none-any.whl
| Download URL | phx_filters_django-4.0.0-py3-none-any.whl |
|---|---|
| Size | 6.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3197b2155112dc243dbf499a24bb6723341ff7138402ffd7ab2aebe8633dd8bb
|
|
BLAKE2b-256 checksum How to use checksums |
35aceee9a2baff324cf2ba5cd7f79e73ed29ad829835479a9c099842e94b3a32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":null,"id":"forky","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|