2

複数のデータベースで実行する必要のあるアプリケーションを作成しています。現在、特定のデータベース(postgresqlおよびmysql)でのみ実行したいコードが移行に含まれています。これを設定する方法はありますか?ありがとう。

4

1 に答える 1

5

移行ではのデータベース接続にアクセスできconnection、接続にはadapter_nameメソッドがあるため、接続の種類を尋ねることができます。

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

MySQLアダプター名が正しいかどうかはわかりませんが、テクニックは適切であり、MySQLアダプター名を自分で簡単に確認できます。

于 2011-05-30T17:58:42.540 に答える