Ruby on Rails 7章後半

投稿者: | 2019年8月3日

Ruby on Rails 7章後半、統合テストやリダイレクトなどをやりました。

〇統合テスト

rails generate integration_test users_signup→テストコードができる
assert_no_difference ‘User.count’ do  post users_path, params:{  user:{  name:””(略)  }  }end
これで、登録に失敗してbefore/afterでcount数が同じことを確認する。

遷移後のページをチェック

assert_template ‘users/new’
assert_select ‘div#error_exaplanation’なんかもできる。

エラー表示用のシカクイのが出るかどうか。

〇リダイレクト

controllerの中でrenderでhttpレスポンスページを返すこともできるがリダイレクトをかけることもできる。
redirect_to @user
上は省略系で、

redirect_to user_url(@user)

テストコードでfollow_direct!をしないでassert_templateを呼び出すと

リダイレクトさせるためのレスポンスとテンプレートがマッチングされてREDになる。

〇flash1回だけ出すメッセージ。
C or Mで追加

flash[:success] = “hogehoge”
message_type=この例だとsuccessになる。

alert-message_type -> alert-successという具合。↓参照

<div class=”alert alert-<%= msg_type %>”>

flashのリファクタリング(ヘルパー)

<%= content_tag(:div, msg, class: “alert-#{msgtype}”) %>

タグの閉じや、開始タグの次にメッセージをマッピングするという手間が軽減

〇rails db:migrate:resetdrop & createしてくれる模様。

●SSL

ruby上ではconfigにSSLをproductionでは使うという設定を入れるだけ。
今はherokuのサブドメイン上で動いているのでherokuのSSL証明書に乗っかる。

●WEBrickからpumaにする。
puma.rbを書き換える。

コメントを残す

メールアドレスが公開されることはありません。