Skip to main content

DjangoQL: Advanced search language for Django (iplweb fork with i18n)

Project description

DjangoQL

Tests PyPI Python Version Django Version License

Advanced search language for Django, with auto-completion. Supports logical operators, parenthesis, table joins, and works with any Django model. Tested on Python 3.10–3.14, Django 5.2 and 6.0. The auto-completion feature has been tested in Chrome, Firefox, Safari, IE9+.

This is a community fork. djangoql-iplweb is a fork of the original DjangoQL by ivelum — install the upstream package from djangoql on PyPI. This fork adds internationalization (i18n) of error messages and modernized packaging/tooling.

These changes are offered back to the upstream project. If the original maintainers merge them, please switch back to the upstream djangoql package — this fork exists only to make the improvements available in the meantime, and will defer to upstream once they land there.

It is published on PyPI as djangoql-iplweb, but the import name stays djangoql (so INSTALLED_APPS and import djangoql are unchanged).

See a video: DjangoQL demo

DjangoQL auto-completion example

Features

  • Python-like query syntax: logical operators (and, or), parenthesis, and the full set of comparison operators
  • Searches across model relations via joins, e.g. author.last_name = "Tolstoy"
  • Works with any Django model and drops into the Django admin with a single mixin
  • Live auto-completion of model field names and values in the admin
  • Configurable schema to restrict searchable models/fields and provide suggestion options
  • Custom search fields for annotations and fully custom search logic
  • Internationalized error messages with translation catalogs for 11 locales
  • Usable outside the Django admin, including a standalone JavaScript completion widget

Installation

Using uv (recommended):

$ uv add djangoql-iplweb

Using pip:

$ pip install djangoql-iplweb

Add 'djangoql' to INSTALLED_APPS in your settings.py:

INSTALLED_APPS = [
    ...
    'djangoql',
    ...
]

For full setup instructions and usage examples, see the Documentation below.

Documentation

📖 Full documentation: https://iplweb.github.io/djangoql-iplweb/

The site is built with MkDocs from the docs/ directory. Key pages:

Supported by

This fork is graciously supported and maintained by iplweb.

iplweb

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangoql_iplweb-0.23.0.tar.gz (248.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

djangoql_iplweb-0.23.0-py3-none-any.whl (283.9 kB view details)

Uploaded Python 3

File details

Details for the file djangoql_iplweb-0.23.0.tar.gz.

File metadata

  • Download URL: djangoql_iplweb-0.23.0.tar.gz
  • Upload date:
  • Size: 248.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.2

File hashes

Hashes for djangoql_iplweb-0.23.0.tar.gz
Algorithm Hash digest
SHA256 e830893e88354592b03810c46c7918e475991747ff1a95415bb246916e88b38d
MD5 79015c92a45cf89770bef5a08598f8db
BLAKE2b-256 25e0c3164c6afb2cb9da40cb0b9f1b94c1c0e4dcffee0b585f24978f63017fb3

See more details on using hashes here.

File details

Details for the file djangoql_iplweb-0.23.0-py3-none-any.whl.

File metadata

File hashes

Hashes for djangoql_iplweb-0.23.0-py3-none-any.whl
Algorithm Hash digest
SHA256 20fb4af8770ab30a0bfb5190ecad58f5e02aa3ea76f2cb1aa969547fafe07b1f
MD5 697fc31c21b7464af957aa6500b35c55
BLAKE2b-256 9ca29c884132b408899dd836b43a7c1bd0b16fea173ea9b8c2f089186806df6c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page