心はいつも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

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

  関連記事

HerokuにRailsアプリをdeployする

Railsプロジェクトというよりも、Railsアプリっていうほうが正んでしょうか …

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

3.3.4レイアウトを使って重複を解消する、です。 ここでapplication …

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

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

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

第10章ユーザーのマイクロポスト、です。 has_many、belongs_to …

もうあかん!Mac OSXのスクロールを逆にする

OSXのいつのバージョンからだっけ? スクロールの向きが突如逆になったんですよね …

no image
電子雑誌を買いました

GWの計画を立てているとき、行きたい場所を検索をすると、HANAKO WESTの …

no image
恐ろしや、WordPressのDBパスワードは平文でおいてある

先ほどサーバーのDBをいじっていてですね、、久々だったのでDBパスワード忘れてし …

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

第11章ユーザーをフォローする、です。ようやく最終章。1週間でできるつもりが3週 …

no image
Everyday Rails頑張る。3章モデルスペック

テスト書いてからコードの決意。 今のような環境がない時代のプログラマでしたが、自 …

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

10.2マイクロポストを表示する、です。 ポストの投稿ではなく、表示だけを先に作 …