New-Village

月間ブログ。だいたい1カ月に1回は更新しているようです。

Ruby on Rails チュートリアル on Cloud9 の学習録(第三章)

引き続きRuby on Rails チュートリアル第三章の学習録です。

 

第3章 ほぼ静的なページの作成

リスト 3.2 秘密トークンを動的に生成する。

どんな意味があってやっているのか、全然理解できない…

 RSpecのインストールについては、Cloud9なので、何か問題が起こるかと心配したのですが、ケロッとインストールが終わりました。ちょっと怖いので、ログがわりにココにターミナルの内容を記載しておきます。

$ rails generate rspec:install

      create  .rspec

      create  spec

      create  spec/spec_helper.rb

3.1静的ページ

rails generate controller StaticPages home helpで、"static_pages"というコントローラーが作成されて、その中に"home"と"help"のロジックが作成される。

間違えた場合は、rails destroy  controller StaticPages home helpで元に戻すことが出来る。

参考: コラム 3.2元に戻す方法

3.2最初のテスト

ん?さっぱりわからない。これはどんな意味なんだろう?

config.include Capybara::DSL

 上のコマンドを書いてから、以下のコマンドをターミナルに書いてテスト実行。赤字が出なければOK。

bundle exec rspec spec/requests/static_pages_spec.rb

 

Aboutページをテストしていく過程で流れを理解させる内容はすごく分かりやすかった。一番最初に"rails generate controller static_pages ...”した内容は、①config/routes.rbを設定して、②app/controllers/static_page_controller.rbの設定、③app/views/static_pages/about.html.erbの作成 を自動でやってくれるものだった。

3.3少しだけ動的なページ

保存を忘れて、下書きが㌧だ。

3.6.1bundle execを追放する

Cloud9では、v1.9.xとv1.8.xのRVMしか使えないが、なぜか、チュートリアルの内容と異なり、"rspec spec/"コマンドは通ります。

3.6.3Spork を使ったテストの高速化

gemfileに"gem 'childprocess', '0.3.6'"を入れるように指示がありますが、Cloud9では、"gem 'childprocess', '0.4.0'"を入れないとエラーがでます。

.rspecファイルですが、Cloud9のIDE上ではLinuxファイルシステム同様に、先頭にドットの付いたファイル名を表示してくれないので、ターミナルからviエディタを起動して編集する必要があります。