Votre migration a accès à une connexion de base de données dans connection
et la connexion a un adapter_name
afin que vous puissiez simplement lui demander de quel type de connexion il s'agit :
def self.up
case connection.adapter_name
when 'PostgreSQL'
# Do PostgreSQL stuff
when 'MySQL'
# Do MySQL stuff
else
# Blow up and catch on fire. Or silently ignore it depending on your needs.
end
end
Je ne sais pas si j'ai le bon nom d'adaptateur MySQL, mais la technique est bonne et vous pouvez facilement vérifier le nom de l'adaptateur MySQL vous-même.