Хотите использовать один и тот же набор моделей Active Record для двух баз данных на основе первичного ключа - PullRequest
1 голос
/ 25 мая 2011

У меня есть один набор моделей ActiveRecord и две базы данных (с одинаковой схемой), против которых я хочу их использовать.Я хотел бы переключить соединение на лету на основе первичного ключа родительской модели.Альтернативой может быть дублирование набора моделей и их наследование от другого суперкласса, подключением которого является другой db (http://pragdave.pragprog.com/pragdave/2006/01/sharing_externa.html).). По сути, я создаю интерфейс, который позволит пользователям сравнивать аналогичные данные в двух базах данных. Однакоиногда данные, которые будут сравнивать пользователи, поступают из одной и той же базы данных. Эти данные будут доступны только для чтения, поскольку мне не нужно ничего записывать ни в одну из баз данных.

Ответы [ 2 ]

1 голос
/ 25 мая 2011

Сейчас мы ищем octopus для шардинга базы данных, может быть, это может быть полезно и вам?

https://github.com/tchandy/octopus

0 голосов
/ 10 мая 2012

Вот еще одно решение.Я не пробовал:

http://magicmodels.rubyforge.org/magic_multi_connections/

На странице признается, что проблемы были найдены в версии 1.0.0.Он также не выглядит таким «прозрачным», как осьминог (упомянутый в другом ответе), который может использовать другое соединение, оборачивая блок вокруг существующего кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...