Skip to main content

Simply route complex django queries to multiple databases.

Project description

https://travis-ci.org/ambitioninc/django-dynamic-db-router.png https://coveralls.io/repos/ambitioninc/django-dynamic-db-router/badge.png?branch=develop Latest PyPI version

Django Dynamic DB Router

Working with multiple databases within django is supported, but the syntax requires peppering .using('my_database') throughout all queries that need to be routed to different databases. This is especially painful when trying to use libraries that were written without multiple database support in mind. With this library, running complex queries across different databases is as simple as:

from dynamic_db_router import in_database

with in_database('non-default-db'):
    result = run_complex_query()

To set up you django project to be able to use this router, simply pip install django-dynamic-db-router and add DATABASE_ROUTERS=['dynamic_db_router.DynamicDbRouter'] to your Django settings.

Django Dynamic DB Router includes a number of additional features, such as:

  • Using in_database as a function decorator.

  • Read and write protection controls.

  • Load database configurations dynamically for the lifetime of the context manager.

For more information, and complete API documentation, see the docs, linked below.

Installation

To install the latest release, type:

pip install django-dynamic-db-router

To install the latest code directly from source, type:

pip install git+git://github.com/ambitioninc/django-dynamic-db-router.git

Documentation

Full documentation is available at http://django-dynamic-db-router.readthedocs.org

License

MIT License (see LICENSE)

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

django-dynamic-db-router-0.3.0.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

django_dynamic_db_router-0.3.0-py2.py3-none-any.whl (7.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-dynamic-db-router-0.3.0.tar.gz.

File metadata

File hashes

Hashes for django-dynamic-db-router-0.3.0.tar.gz
Algorithm Hash digest
SHA256 0a12c0414d7413c74a6371df6481d7eb5358d214543e9f9cb43633bcce3825d1
MD5 8f0028e828038ddd887c19cdd1c19e13
BLAKE2b-256 c1a9a0756e5232c7998d738ded606971c3bd201264084d5029db23f58c23219c

See more details on using hashes here.

File details

Details for the file django_dynamic_db_router-0.3.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_dynamic_db_router-0.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 34ee1a7eb107de3c79d4521418fbc92e098697ac4cf4a904fc26d75a59663c6f
MD5 0caa3b1a66aa990812e4f28e00b3e44e
BLAKE2b-256 e60f9e775acf43516adcca62ec15e073b1a5e7b3152a7dc955da103c67b5fa92

See more details on using hashes here.

Supported by

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