5

コマンドラインから単純に実行rails gすると、プリロードに時間がかかります。実行中の から複数の移行を高速に生成したいrails cので、試しました:

require 'rails/generators'
Rails::Generators.invoke('migration',['user_book_list_followings'],{:behavior=>:invoke, :destination_root=>Rails.root})

:behavior 引数と :destination_root 引数はどこで取得したのですか? さて、コマンドからジェネレーターを実行し、正確な引数を記録したときに、Rails::Generators#invoke 実行ポイントをこじ開けました。

しかし、面白いことに、次のようなエラーが表示されました。

必須オプション '--orm' に値が指定されていません

何か見逃しましたか?(私はRails 3.2.3を使用していました)

4

2 に答える 2

0

Rails g の呼び出しを高速化する 1 つの解決策は、Spring を使用することです。

Spring は Rails アプリケーションのプリローダーです。アプリケーションをバックグラウンドで実行し続けることで開発をスピードアップするため、テスト、rake タスク、または移行を実行するたびにアプリケーションを起動する必要がありません。

于 2020-08-19T04:08:37.343 に答える