Миграция для создания различных структур баз данных в Rails - PullRequest
0 голосов
/ 15 марта 2011

У меня есть 3 разных типа организаций и 3 разные структуры баз данных: по одной для каждого типа. Когда регистрируется org1, я создаю новый экземпляр базы данных для org1, а когда регистрируется org2, я создаю новый экземпляр базы данных, и то же самое для org3.

Теперь, как мне запустить миграцию для трех разных структур db: из моего приложения вскоре после создания нового экземпляра базы данных для организаций.

Я создаю экземпляр БД из приложения:

ActiveRecord::Base.connection.execute(sql)

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

1 Ответ

1 голос
/ 15 марта 2011

Команда, которую вы ищете, - установление соединения.Вы можете посмотреть на рельсы RDOC.Поиск «Соединение с несколькими базами данных в разных моделях» в http://api.rubyonrails.com/classes/ActiveRecord/Base.html.

Соединения обычно создаются через ActiveRecord :: Base.establish_connection и извлекаются ActiveRecord :: Base.connection.Все классы, унаследованные от ActiveRecord :: Base, будут использовать это соединение.Но вы также можете установить класс-специфическое соединение.Например, если Course является ActiveRecord :: Base, но находится в другой базе данных, вы можете просто сказать Course.establish_connection и Course, и все его подклассы будут использовать это соединение вместо этого.

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