Ruby on Rails

Ruby on Rails5学習用メモ②(プロジェクト作成直後で気になることまとめ)

Ruby on Rails勉強用メモ第2段となります。
学習用メモに近いので読み手を意識した文章になっていない箇所もございます。

第1段は下記となります。

resourcesで作られるルーティングパターンの変更方法

ルーティングで使われるresourcesですが、パターンは固定なのか気になりました。

Railsドキュメントを読むと生成されるルートは決まっていますのでこれは変更が難しいのかなと考えました。
そもそも本格的なアプリケーションだとシンプルなルーティングは無い気がしますのでresources自体使わなさそうですね・・・

Seedデータの管理方法

rake db:seedコマンドにて初期データを作ることも可能ですが、これはマスタデータやテストデータなどが混在して管理が煩雑になるのではないかと気になりました。

便利でありますが、私のようなズボラ人間だとテストデータとして用意したものを本番環境に反映する操作ミスが怖いですね。
gitignoreしておかないと思いました・・・

調べたところ、環境ごとに使うべきSeedデータを用意している方法を記載している方もいました。
やはりデータの扱いや管理は事故が起こらない仕組みを作ることが大事ですね。

Rails環境ごとにSeedデータ切り替えるseeds.rbの書き方
https://blog.cloud-acct.com/posts/u-rails-user-seeddata/

Gemfileでのバージョン指定の書き方

教材を参考にするとGemfileにソフトウェアを追加するのですが、ものによってバージョン指定方法が「~>」「>=」とあるのが気になりました。

# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'

調べたところ、細かく意図があるようでした。

指定方法意味
X.Y.Z(例:1.2.3) X.Y.Z のバージョン
>= X.Y.Z( 例: >= 1.3.0 ) X.Y.Z 以上のバージョン
>= X.Y.Z, <A.B.C( 例: >= 1.3.0, <1.5.0 ) X.Y.Z 以上 A.B.C 未満のバージョン
~> X.Y.Z (例: ~> 5.0.0 ) X.Y までのバージョン + Zがその時点の最新

チルダを使うパターンが若干分かりづらいですがバグ修正でバージョンアップの反映とかはGemfileを変更せずコマンド1つで対応出来るのは嬉しいですね。