Моя среда: Ruby 1.9.2p290, Rails 3.0.9 и RubyGem 1.8.8
, к сожалению, у меня проблема, когда я сталкиваюсь множественная база данных.
Ситуация такова: У меня две модели связаны с двумя разными базами данных, а также устанавливаются связи друг с другом. соединение с базой данных, указанное в каждой модели, похоже
class Visit < ActiveRecord::Base
self.establish_connection "lab"
belongs_to :patient
end
class Patient < ActiveRecord::Base
self.establish_connection "main"
has_many :visits
end
Я получил ошибку при выполнении следующего сценария
@visits = Visit.joins(:patient)
Ошибки: Mysql2 :: Error: Таблица 'lab.patients' не существует: SELECT посещений
. * ИЗ посещений
ВНУТРЕННЕЕ СОЕДИНЕНИЕ пациентов
НА пациентов
. id
IS NULL
Здесь таблица «пациенты» находится в «основной» базе данных, а таблица «посещений» - в базе данных «лаборатория» Я сомневаюсь при выполнении кода, который учитывает Rails » Таблица пациентов является частью базы данных «лаборатории» [которая содержит таблицу «посещений»].