railsチュートリアルで学習した後にポートフォリオの作成に当たる方も一定数いらっしゃるかと思います。そこで、railsチュートリアルと評価されやすいポートフォリオの差を比較し、不要なファイルを生成しないためのrails_new実行時のオプションを紹介します。
#●railsチュートリアルと異なる点
###1.データベース
railsチュートリアルでは、特にデータベースの設定を行わず、デフォルトのまあSQliteを使用しています。
しかしポートフォリオを作成する際には、何らかのデータベースを選択し設定するかと思います。(MySQLかPostgreSQLが良いと思います。)
そこで実行すべきコマンドが下記です。
rails new アプリケーション名 -d データベース名
これにより使用するデータベースを任意の物に設定することができます。
もちろん後からでも変更できますが、工数を削減することができます。
2.テスト
railsチュートリアルではminitesを使用していましたが、ポートフォリオして評価されるのであればRspecでテストを実装する必要があります。
そこで実行すべきコマンドが下記です。
rails new アプリケーション名 -T
これによりminitestの作成をスキップできます。そしてrspecも自動生成ファイルを調整することができます。
require_relative 'boot'
require 'rails/all'
Bundler.require(*Rails.groups)
module アプリケーション名
class Application < Rails::Application
config.load_defaults 5.1
# 省略
config.generators do |g|
g.test_framework :rspec,
fixtures: false, # テストDBにレコード作成するファイルの作成をスキップ(初めだけ、のちに削除)。
view_specs: false, # ビューファイル用のスペックを作成しない。
helper_specs: false, # ヘルパーファイル用のスペックを作成しない。
routing_specs: false # routes.rb用のスペックファイル作成しない。
end
end
end
詳細な設定方法は下記を参考に実装すると良いです。
Everyday Rails - RSpecによるRailsテスト入門
少し情報が古い点もありますが、とても参考になります。
具体的にはcontroller_specやfeature_specは現在あまり使用されておらず、request_specやsystem_specを使用されています。詳細はここでは省略させて頂きます。
#●まとめ
面倒に感じますが、初期設定をしっかりと整えることでトータルで見ると工数をかなり減らすことができ、おすすめです。