Skip to main content
https://github.com/todofixthis/filters-django/actions/workflows/build.yml/badge.svg https://readthedocs.org/projects/filters/badge/?version=latest

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:

  1. Install uv (once per machine).

  2. Install dependencies:

    uv sync
  3. 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

  1. Bump the version (updates pyproject.toml and uv.lock):

    uv version <version>
  2. Commit the changes:

    git add pyproject.toml uv.lock
    git commit
  3. Publish to PyPI:

    uv publish --username __token__

3. Create GitHub Release

  1. 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.

  2. Go to the Releases page for the repo.

  3. Click Draft a new release.

  4. Select the tag that you created in step 1.

  5. Specify the title of the release (e.g., Django Filters v1.2.3).

  6. 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.

  7. GPG-sign the description for the release (ASCII-armoured).

  8. Attach the build artefacts to the release.

  9. 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)

Source distribution for phx-filters-django 4.0.0
File Size Uploaded
phx_filters_django-4.0.0.tar.gz 61.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for phx-filters-django 4.0.0
File Interpreter ABI Platform
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}

Release history Release notifications | RSS feed

This release

4.0.0 This release

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.1.0

2 release files

3.0.1

2 release files

2.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page