心はいつもAirPucci (空元気でもいいから)

毎日がPucciを着ているような気分

RailsTutorial4.0を高速で復習する。7章

   


第7章ユーザー登録、です。
6章でuserモデルを作ったので、7章はwebでの登録機能を追加するですか。

まずはブランチ作成です。
git checkout master
git checkout -b sign-up

ユーザープロファイルページのイメージ

7.1ユーザーを表示する、です。
ユーザープロファイルページのイメージを作成しています。
profile_mockup_bootstrap

このtwitter風画面のとりあえず写真表示までをやると。

userモデルに、写真のカラムと、ニックネームが必要になりそう。
新規ユーザー登録時はemailとパスワードだけでいいから、後から追加できるようになるのか?

と、いろいろ仕様を考えておきます。

7.1.1デバッグとRails環境、です。

画面にデバッグ情報を追加

ビルトインのdebugメソッドとparams変数を使用して、各プロファイルページにデバッグ用の情報が表示されるようになります、だそうです。

リスト7.1 サイトのレイアウトにデバッグ情報を追加する。
app/views/layouts/application.html.erb

<!DOCTYPE html>
<html>
略
  <body>
    <%= render 'layouts/header' %>
    <div class="container">
      <%= yield %>
      <%= render 'layouts/footer' %>
      <%= debug(params) if Rails.env.development? %>
    </div>
  </body>
</html>

debugはヘルパーメソッドですね。

リスト7.2 デバッグ表示を整形するための追加と、Sassのミックスイン。
app/assets/stylesheets/custom.css.scss

@import "bootstrap";

/* mixins, variables, etc. */

$grayMediumLight: #eaeaea;

@mixin box_sizing {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
略

/* miscellaneous */

.debug_dump {
  clear: both;
  float: left;
  width: 100%;
  margin-top: 45px;
  @include box_sizing;
}

factorygirlでテストデータ仕込む

ちょっといろいろすっ飛ばして、
7.1.3ファクトリーを使用してユーザー表示ページをテストする、です。

factorygirlはもうgemで入っているので、データセットアップだけします。

リスト7.8 Userモデルオブジェクトをシミュレートするためのファクトリー。
spec/factories.rb

FactoryGirl.define do
  factory :user do
    name     "Michael Hartl"
    email    "michael@example.com"
    password "foobar"
    password_confirmation "foobar"
  end
end

RSpecで参照するテスト用データです。

リスト7.11 BCryptのコストファクターをテスト環境向けに再定義する。
config/environments/test.rb

SampleApp::Application.configure do
  .
  .
  .
  # bcrypt'のコスト関数を下げることでテストの速度を向上させる。
  ActiveModel::SecurePassword.min_cost = true
end

これでテストが早くなるそうで、いつでも書いとけと。このセットアップも最初からやっとくべきですね。

ここまでが下準備。

次は7.1.2ユーザーリソースからです。

 - テクニカル ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

使ったらダメなiPhoneケーブル

iPhoneのApple純正ケーブルって、はげやすくないですか?iPhone5用 …

初めてのRuby8章「オブジェクトとクラス」

2章「配列とハッシュ」の次はいきなり8章「オブジェクトとクラス」に行ってしまいま …

no image
MacBookAirで真央ちゃんのテレビ放映を見ました

テレビ持っていないを公言しています。 15年以上使っていたナショナル6型ブラウン …

no image
RailsTutorial4.0を高速で復習する。6.5章。

演習1問目。 リスト6.20の、メールアドレスを小文字に変換するコードに対するテ …

no image
RailsTutorial4.0を高速で復習する。4章と4.1章。

さて、4章です。4章ではRubyに関する内容が多かったような記憶が。 動的なWe …

Lionさんがお出まし?AppStoreでのアップデート

MacBookAirのDockにあるAppStoreアイコンになにやらアップデー …

no image
IBActionのIBって?

railsもやってますが、xcodeも再開しています。 ところで、 IBActi …

詳解 Objective-C 2.0 第3版 CHAPTER4 オブジェクトの型と動的結合

CHAPTER4は「オブジェクトの型と動的結合」なんだけど、 動的結合ってなに? …

no image
RailsTutorial4.0を高速で復習する。3章。

巷にRails4本がなく、Rails3本をRails4でやってみようとしたところ …

no image
iPhone充電3回分?大容量バッテリーで残念がなくなりました

iPhoneは便利なので、一日中使いっ放しの日がよくあります。iPhoneがあれ …