個人的に「rails newをする際によく使うな」と感じるオプションと、新規プロジェクトを作成したときによく行う設定を備忘録を兼ねてまとめます。
rails newをする際のオプション
まずはrails newをする際によく付けるオプションについてです。
一つ一つのオプションについては後述します。
rails _6.0.3.2_ new appname --database=mysql --skip-test
railsのバージョン指定
rails _6.0.3.2_ new
こうするとrailsのバージョンを指定することができます。
_6.0.3.2_の部分はその都度値を変えてください。
使用するデータベースの指定
--database=mysql
このようにDBを指定しないと、デフォルトのDBはsqliteというものになります。
今回はmysqlを使用する設定です。
Minitestを生成しない
--skip-test
デフォルトでプロジェクトを生成すると、Minitestというものが作られます。
私自身、テストにはRSpecを使用することが多いため、上記のようにMinitestを生成しないようにしています。
rails newした後に行う設定
ここからは実際にrails newをした後の設定となります。
rails gコマンド使用時に、不要ファイルを生成しないように設定
module appname
  class Application < Rails::Application
    # 以下を追加
    config.generators do |g|
      g.stylesheets false
      g.javascripts false
      g.helper false
      g.test_framework false
    end
    config.time_zone = "Tokyo"
    config.i18n.default_locale = :ja
  end
end
今回主に追加したのは下記の部分です。
config.generators do |g|
  g.stylesheets false
  g.javascripts false
  g.helper false
  g.test_framework false
end
rails gコマンドでコントローラを作成すると、ファイルが自動的に生成されてしまいますが、不要なもの(coffeeやcss)を生成しないようにするのがこの記述です。
rails gコマンドは開発の過程で頻繁に使用するものなので、この設定を最初に済ませておくと非常に楽になります。
config.time_zone = "Tokyo"
config.i18n.default_locale = :ja
また、こちらでデフォルトの言語を日本語にし、タイムゾーンのデフォルトを東京に設定します。
config.i18n.default_locale = :ja
ただ、上記(日本語化)については注意があり、deviseのGemを使用した時にusers/sign_upにアクセスするとエラーが発生する場合があります。
なので「特に今は日本語化はいいかな。エラー出るとだるいし」と思う方はこちらは特別設定しなくても良いと思われます。
