django-query-builder
querybuilder is a django library for assisting with the construction and execution of sql. This is not meant to replace django querysets; it is meant for managing complex queries and helping perform database operations that django doesn't handle.
Why use querybuilder?
The django querybuilder allows you to control all parts of the query construction. This is happens more clearly because the function calls more closely represent the actual sql keywords.
Why not just use django's .raw() function?
While the raw function lets you execute custom sql, it doesn't provide any way for the developer to build the query dynamically. Users lacking experience writing "raw" sql should avoid using querybuilder and stick with django's querysets. The querybuilder's query construction closely mirrors writing sql, where django querysets simplify the sql generation process for simple queries.
Requirements
- Python 3.7 - 3.9
- Django 2.2 - 4.1
- Postgres 9.3+
Installation
To install the latest release, type:
pip install django-query-builder
To install the latest code directly from source, type:
pip install git+git://github.com/ambitioninc/django-query-builder.git
Documentation
Full documentation is available at http://django-query-builder.readthedocs.org
License
MIT License (see LICENSE)