2

実行時:

 rails generate migration <someaction> field:type

2 つのアクションを実行していることがわかります。

  1. コール呼び出し active_record
  2. 移行ファイルを作成します。

移行ファイルを生成する理由は完全に理解できますが、なぜ ActiveRecord を呼び出すのでしょうか? 移行ファイルを手動で作成したい場合はどうすればよいのでしょうか? この呼び出しをどのように模倣しますか (必要な場合でも..)?

4

2 に答える 2

3

MigrationGeneratorジェネレーター:

1) ORM (Rails のデフォルトでは Active Record) をロードして、正しい 'ORM'::Migration クラス (デフォルトでは ActiveRecord::Migration) を拡張します。

NamedBase2)実行中の Active Record がテーブル名を複数形にする必要があるかどうかを判断するのは、それ自体がジェネレーターの拡張機能です。実行するとこうなります

rails generate migration AddPartNumberToProducts part_number:string

また

rails generate migration AddPartNumberToProduct part_number:string

ファイルでも同じ結果が得られます。

簡単に言えば、手動で移行を作成するために active_record を呼び出す必要はありませんが、アクティブ レコードを使用している場合は、テーブル名が移行ファイルで複数形になっていることを確認してください。

于 2013-01-09T00:40:23.287 に答える
0

移行ファイルを生成するために、activerecord gemが呼び出されます。

よく見ると、移行ファイルのスーパークラスはActiveRecord::Migrationクラスです。

于 2013-01-09T00:34:47.127 に答える