実行時:
rails generate migration <someaction> field:type
2 つのアクションを実行していることがわかります。
- コール呼び出し active_record
- 移行ファイルを作成します。
移行ファイルを生成する理由は完全に理解できますが、なぜ ActiveRecord を呼び出すのでしょうか? 移行ファイルを手動で作成したい場合はどうすればよいのでしょうか? この呼び出しをどのように模倣しますか (必要な場合でも..)?
実行時:
rails generate migration <someaction> field:type
2 つのアクションを実行していることがわかります。
移行ファイルを生成する理由は完全に理解できますが、なぜ ActiveRecord を呼び出すのでしょうか? 移行ファイルを手動で作成したい場合はどうすればよいのでしょうか? この呼び出しをどのように模倣しますか (必要な場合でも..)?
MigrationGenerator
ジェネレーター:
1) ORM (Rails のデフォルトでは Active Record) をロードして、正しい 'ORM'::Migration クラス (デフォルトでは ActiveRecord::Migration) を拡張します。
NamedBase
2)実行中の Active Record がテーブル名を複数形にする必要があるかどうかを判断するのは、それ自体がジェネレーターの拡張機能です。実行するとこうなります
rails generate migration AddPartNumberToProducts part_number:string
また
rails generate migration AddPartNumberToProduct part_number:string
ファイルでも同じ結果が得られます。
簡単に言えば、手動で移行を作成するために active_record を呼び出す必要はありませんが、アクティブ レコードを使用している場合は、テーブル名が移行ファイルで複数形になっていることを確認してください。
移行ファイルを生成するために、activerecord gemが呼び出されます。
よく見ると、移行ファイルのスーパークラスはActiveRecord::Migrationクラスです。