rails generateコマンド実行時の自動ファイル作成の制御

rails generateコマンド実行時の自動ファイル作成の制御

「アプリケーションが立ち上がるまでの流れ」

・サーバーを立ち上げる為の[rails s]コマンドや[rails c]コマンドを実行してから実際にアプリケーションが立ち上がるまでの間に初期化という作業を実行している。

・初期化時には、下記の3種類のファイルが呼び出されており、それぞれ異なる初期化作業を行っている。

config/initializers以下の各ファイル:[特定のツールや機能に対する設定ファイルを、ファイル別に記述する。(assets.rb / aws.rbなど)] config/environments以下のファイルのうち、実行環境に合致しているもの:[環境別に行いたい初期化作業を記述する(production.rb / staging.rb など)] config/applicaiton.rb:[アプリケーション全体に関する設定を行う]

・アプリケーションの立ち上げ



「ジェネレーターによる自動生成ファイルの制御」

railsには、[rails generate]というコマンドが用意されていて、rails generateで作成されるものに付随したファイルが自動生成される。この機能をジェネレーターという。

ジェネレーターによって自動生成されるファイルは、「applicaiton.rb」に記述することで制限できる。

ex)

module RunteqNormal
  class Application < Rails::Application
     config.generators do |g|
        g.assets false
        g.helper false
        g.test_framework false
        g.skip_routes = true
     end
  end
end

上記は、assets、helper、testファイル、ルーティングが生成されないようにした例。

※注意
ブロックの中に記載する、helperなどはディレクトリ名とは無関係!!



※[rails generate]で利用できるジェネレーターの一覧が確認できる。

また、[rails generate ○○ -h]でgenerateのオプションを確認できる。