[Rails] アプリ開発における基本設定

学習記録

はじめに

Railsではサーバを立ち上げる際、初期化と言う作業を行っており、

  • config/initiializers以下のファイル (assets.rbやaws.rbなどの特定のファイルに対する設定を記載する)
  • config/environments以下のファイルのうち、実行環境に合致しているもの (初期化する際の設定を環境別に記載する)
  • config/application.rb (アプリケーション全体に適応させたい設定を記載する)

の3種類が呼び出されています。

今回はアプリケーション全体に生成ファイルの設定をしていきます。

rails g コマンドを使用したら、assets、helper、testファイル、ルーティングなどルが生成されます。後で1つずつファイルを削除を削除するのは面倒です。

あらかじめ不要なファイルが生成されないやり方を見ていきましょう。

generate コマンドとは?

rails generateコマンドでは、テンプレートを用いてさまざまなものを作成します。rails generateを実行すると、利用可能なジェネレータの一覧が表示されます。
コントローラジェネレータにはgenerate controller ControllerName action1 action2という形式でパラメータを渡します。

Railsガイド

作業の流れ

  • 設定せずにgenerateコマンド
  • 生成されたファイルを削除する
  • generateコマンドの設定を変える
  • generateコマンドを試す

設定せずにgenerateコマンド

helloアクションを実行すると、ちょっとしたメッセージを表示するGreetingsコントローラを作ってみましょう。

$ rails generate controller Greetings hello
     create  app/controllers/greetings_controller.rb
      route  get 'greetings/hello'
     invoke  erb
     create    app/views/greetings
     create    app/views/greetings/hello.html.erb
     invoke  test_unit
     create    test/controllers/greetings_controller_test.rb
     invoke  helper
     create    app/helpers/greetings_helper.rb
     invoke    test_unit
     invoke  assets
     invoke    scss
     create      app/assets/stylesheets/greetings.scss

Railsガイドより引用

assets、helper、testファイル、ルーティングなどルが生成されていますね。

生成されたファイルを削除する

generateコマンドでは、複数のファイルが生成されることが分かりました。

もしそれらを消したいとなると、いちいち消すのは手間なので、一括削除する方法があります。

$ rails destroy controller Greetings

generateコマンドの設定を変える

Railsガイドから、generateコマンドの設定の変え方を確認しましょう。

config/application.rb

config.generators do |g|
  g.skip_routes true   # ルーティングを生成しない
  g.assets false       # assetsファイルを生成しない
  g.helper false       # helperを生成しない
  g.test_framework false  # testファイルを生成しない
end

generateコマンドを試す

だいぶスッキリしたはずです。

終わりに

アプリ開発をする前に、これらの設定をすることで効率的な開発を行う事ができます。

参考記事

コマンドラインツール - Railsガイド
Railsが提供する各種コマンドラインツールについて解説します。

コメント

タイトルとURLをコピーしました