2015-01-12 2 views
0

Я работаю в приложении Django для инвесторов. В настоящее время используется база данных и 3 установленных приложения, настроенных в файле settings.py.Django postres методы для внешней базы данных

Я собираюсь интегрировать новую функцию, для которой каждый брокер зарегистрирует свой IP-адрес в нашем приложении, чтобы мы реплицировали нашу базу данных postgres на своем сервере (все такое же, кроме «HOST» относительно базы данных) вручную. Затем брокер отправит методы GET и POST на наш сервер со своего сервера.

Мне нужно переключить базу данных на основе запроса. Я думаю, что я могу подключать их базу данных postgres динамически, просматривая запрос и обрабатывая SQL-запросы. Мое требование: мне просто нужно использовать методы postgres Django для обработки без настройки базы данных в файле настроек.

Если настройка базы данных в настройках является единственным способом, как я могу переключаться на базу данных каждый раз эффективно и сколько баз данных можно подключать в одном приложении Django?

ответ

1

Я считаю, что если вы хотите использовать методы Django (а не просто использовать запросы RAW SQL и анализировать их), вам нужно будет использовать метод settings.py и определить все ваши базы данных.

https://docs.djangoproject.com/en/1.7/topics/db/multi-db/

Короче говоря, вы определяете базу данных и может выбрать его вручную в коде с помощью (согласно документации):

Author.objects.using(database_name_variable).filter(...) 

Альтернативой было бы посмотреть на использование REST API (например, Tastypie), чтобы совершать вызовы в разные экземпляры Django, подключенные к каждой базе данных.

+0

Есть ли какой-либо предел для подключения баз данных в Django? – ManikandanV

Смежные вопросы