Railsチュートリアル第2章はこちら
Railsチュートリアル第3章はこちら
2.1 アプリケーションの計画
新しくrails newでtoy_appを作成する。
rails newすると、git initも実行されるようで.gitディレクトリがtoy_app配下に作成される。
tree
.
└── environment
├── hello_app
└── toy_app
└──.git
2.2 Usersリソース
RailsのscaffoldコマンドでUsersリソースを手軽に作成する実演の章
rails generate scaffold User name:string email:string
rails db:migrate
rails server
rails generateコマンドの素晴らしいところは、一発でmodelもviewもcontrollerも全部作成して、routes.rbまで追記してくれるところ。
ここからRubyに関する解説も入ってくる。
ポイント
- @記号で始まる変数をRubyではインスタンス変数と呼ぶ
- Railsのコントローラ内で宣言したインスタンス変数はビューでも使えるようになる
2.3 Micropostsリソース
twitterをイメージしたアプリを作るため、Usersリソースと関連付けてMicroposts(投稿)リソースを作成する。
Rubyの継承についての解説がメイン。
ポイント
- rails consoleでREPLを起動できる
- Railsのコントローラは必ずApplicationControllerを継承している
2.4 最後に
割愛
3.1 セットアップ
割愛
3.2 静的ページ
ここからはscaffoldを使わずにページを作成していく。
rails generate controller StaticPages home help
上記を実行すると、コントローラーとしてstatic_pages_controllerが作成されhomeメソッドとhelpメソッドが、ビューとしてhomeとhelpが作成される。モデルは作成されない。routes.rbには自動追記してくれる。
3.3 テストから始める
TDD(テスト駆動開発)についての解説と簡単な実演の章。
Red=>Green=>Refactoringのルールに則って開発を進める。
3.4 少しだけ動的なページ
少しだけ発展的なTDDの章。
ポイント
- 「DRY」(Don’t Repeat Yourself: 繰り返すべからず)
- 「埋め込みRuby」(Embedded Ruby)
- provideメソッドとyeildメソッド
3.5 最後に
割愛
3.6 高度なセットアップ
テスト駆動開発を便利にしてくれるライブラリの紹介。
-
minitest reporters
:コンソールに表示されるテスト結果に色を付ける -
Guard
:ファイル編集保存時にテストを自動実行してくれる-
bundle exec guard
で起動させておくと、ファイル保存時に自動でrails testを実行してくれる。
-