概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Viewing migration SQL without running the migration 原文公開日: 2018/01/10 著者: Tom Copeland 「マイグレーションを実行しないでSQLを取る方法はありますか?」という質問を何度か目にしたことがあります。芸のない回答としては、質問の「マイグレーションを実行しないで」を無視してマイグレーションを実行し、ログファイルをgrepしてSQL出力を取り出し、db:rollbackを実行せよというのが考えられます。しかしこれはズルですし手間もかかります。もっとマシな方法はないものでしょうか。 私の最初のアプローチは、ActiveRecordスタックの相当深いところでメソッド呼び出しをインターセプトし、欲しいマイグレーションの場合は実行せずにSQLを出力するというもので
![Rails: マイグレーションを実行せずにマイグレーションのSQLを表示する(翻訳)|TechRacho by BPS株式会社](https://cdn-ak-scissors.b.st-hatena.com/image/square/02a17b8717a1793039e5340a33276c4d7c1c3f82/height=288;version=1;width=512/https%3A%2F%2Ftechracho.bpsinc.jp%2Fwp-content%2Fuploads%2F2018%2F01%2Frails_migration_eyecatch.png)