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.

Filename, size & hash SHA256 hash help File type Python version Upload date
django_dynamic_db_router-0.3.0-py2.py3-none-any.whl (7.9 kB) Copy SHA256 hash SHA256 Wheel 2.7
django-dynamic-db-router-0.3.0.tar.gz (6.2 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page