Railsのmigrationで生SQLを使う+パラメータを使う

migrationファイル内では、モデルクラスを使わないのが安全です。 これは、将来的に仕様変更やリファクタでそのモデルがなくなったりリネームされた際、rake db:migrate:resetが通らなくなるからです。 migration内でデータの変換処理をすることも多いので、SQLを生で叩くには以下のようにします。 sql = "UPDATE users SET some_flag = 1;" ActiveRecord::Base.connection.execute(sql) さすがにパラメータを指定したいことも多いですが、ActiveRecordのノリで?などのplaceholderを渡しても処理してくれ … 続きを読む Railsのmigrationで生SQLを使う+パラメータを使う