Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion db_multitenant/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,31 +8,35 @@

_CACHED_MAPPER = None


def update_from_env(database_settings=None, cache_settings=None):
update_database_from_env(database_settings)
update_cache_from_env(cache_settings)
update_tenant_name_from_env()


def update_database_from_env(database_settings):
from django.db import connection
db_name = os.environ.get('TENANT_DATABASE_NAME')
if db_name and database_settings is not None:
database_settings['NAME'] = db_name
connection.get_threadlocal().set_db_name(db_name)


def update_cache_from_env(cache_settings):
from django.db import connection
cache_prefix = os.environ.get('TENANT_CACHE_PREFIX')
if cache_prefix is not None and cache_settings is not None:
cache_settings['KEY_PREFIX'] = cache_prefix
connection.get_threadlocal().set_cache_prefix(cache_prefix)


def update_tenant_name_from_env():
from django.db import connection
tenant_name = os.environ.get('TENANT_NAME')
if tenant_name:
connection.get_threadlocal().set_tenant_name(tenant_name)


def get_mapper():
"""Returns the mapper."""
global _CACHED_MAPPER
Expand Down