Mysql
 sql >> Base de données >  >> RDS >> Mysql

Rails :mysql et postgres en même temps dans la même application ?

Si par exemple vous, dans votre database.yml avez quelque chose comme ceci (ne vous souvenez pas vraiment des attributs corrects, mais je pense que vous avez compris) :

postgres:
    adapter: postgres
    database: gis

mysql:
    adapter: mysql
    database: app

Ensuite, vous pouvez ajouter

establish_connection :postgres 

dans les modèles qui devraient utiliser la base de données Postgres. Bien sûr, il pourrait être plus facile de créer une classe abstraite et de faire en sorte que tous les modèles utilisent celle-ci à la place car c'est plus DRYer.

class PostgresRecord::Base < ActiveRecord::Base
  self.abstract_class = true
  establish_connection :postgres
end

Ou, puisque vous prévoyez éventuellement de migrer vers Postgres, vous devriez probablement faire le contraire, définir la base de données Postgres par défaut et modifier la connexion pour MySQL.