Mi entorno: Rubí 1.9.2p290, Rails 3.0.9 y 1.8.8 rubygemCarriles 3 - base de datos múltiple con une a condición
por desgracia, tengo un problema cuando venir a través de múltiples bases de datos.
La situación es la siguiente: Tengo dos modelos conectan con dos bases de datos diferentes y también establecen una asociación entre sí. conexión a la base de datos especificando en cada modelo, le gusta mirar
class Visit < ActiveRecord::Base
self.establish_connection "lab"
belongs_to :patient
end
class Patient < ActiveRecord::Base
self.establish_connection "main"
has_many :visits
end
me dio un error cuando se cumplen siguiente escenario
@visits = Visit.joins(:patient)
Errores: mysql2 :: Error: no existe la tabla '' lab.patients: SELECT visits
. * FROM visits
INNER JOIN patients
EN patients
. id
IS NULL
Aquí la tabla 'pacientes' está en la base de datos 'principal' y la tabla 'visitas' en el 'laboratorio' de base de datos dudo cuando se ejecuta el código, que Rails está considerando la mesa de 'pacientes' es parte de 'laboratorio' base de datos [que contiene la tabla 'visitas'].
Ver [Edición # 539] (https://github.com/rails/rails/issues/539) para información adicional – cweston