ruby on rails - tutorial - ¿Cómo manejar mejor las conexiones de base de datos por modelo con ActiveRecord?
tutoriales codigofacilito (2)
Además, es una buena idea subclasificar su modelo que usa una base de datos diferente, como por ejemplo:
class AnotherBase < ActiveRecord::Base
self.abstract_class = true
establish_connection "anotherbase_#{RAILS_ENV}"
end
Y en tu modelo
class Foo < AnotherBase
end
Es útil cuando necesita agregar modelos posteriores que acceden a la misma, otra base de datos.
Me gustaría la manera canónica de hacer esto. Mis búsquedas de Google han quedado cortas. Tengo un modelo de ActiveRecord que debe asignarse a una base de datos diferente que el resto de la aplicación. Me gustaría almacenar las nuevas configuraciones en el archivo database.yml también.
Entiendo que se debe llamar a establecer conexión, pero no está claro dónde. Esto es lo que obtuve hasta ahora, y no funciona:
class Foo < ActiveRecord::Base
establish_connection((''foo_'' + ENV[''RAILS_ENV'']).intern)
end
Je. ¡Yo tenía razón! Más limpiamente
class Foo < ActiveRecord::Base
establish_connection "foo_#{ENV[''RAILS_ENV'']}"
end
Gran publicación en pragedave.pragprog.com .