miyatsu's blog

なんか勢いでかいてます。

rails先輩

こんにちはみやつです。

先週と、今週とブログはすぐ書けませんでしたが、社内勉強会のgaien.rbは毎週開催しております。粛々とrailsチュートリアルの写経を進めております。

この2週間で第6章と第7章が完了しました。 すこしスピードアップ。 ということでやった事のおさらいとまとめをしておきます。

has_secure_password

第6章を終えるとユーザモデルを作って、ユーザの作成ができるようになります。 ユーザといえば認証処理ですね。 認証処理といえばdeviseが有名ですが、このチュートリアルではhas_secure_passwordを利用しています。このメソッドはRails3.1から導入されたもので、次の2ステップですぐに使えます。

  1. usersテーブルにpassword_digestカラムを追加する
  2. bcrypt-ruby gemをいれる

その後、has_secure_passwordメソッドをモデルに記述します。

class User < ActiveRecord::Base
  .
  .
  .
  has_secure_password
end

これだけでなんと次のことができるようになるのです。

  • password属性を追加し、存在の要求
  • password_confirmation属性を追加し、存在の要求
  • authenticateメソッドでユーザ認証

railsすごい。

認証機能なんてありふれた機能な訳で、いちいち実装するなんてあまりにナンセンスな気がする訳ですが、こういうのはフレームワークさんがよろしくやってほしいと思っていたんですが、railsさんはこういうところやってくれるんだからなぁ。

これからはrails先輩と呼ぼうかと思ってしまう。

第7章

6章のまとめはこのくらいで7章について。 また今度書きます。