RoR入門第5回

ちょっと間が空いてしまったが第5回。


ランダム数値発生メソッド。

rand


インスタンス中からプロパティにアクセスするときに強制的にアクセサメソッドを使用させる方法。

self.プロパティ名


動的ファインダメソッド
ActiveRecordで下記のようにすると列名で検索を行う。
method missingを使用するのでメソッドの定義は必要ない。

find_by_列名


2つの入力エリアに同じ値が入力されているかどうかの検証。
パスワードやメールアドレス等で使用。

validates_confirmation_of :プロパティ名
attr_accessor :プロパティ名_confirmation


セッションに格納する必要はないけど、flushに登録してメッセージ表示等したいときは次のようにするらしい?

flush.now[:notice] = "メッセージ"


form_forを使用しないフォーム。
モデルを使用しない場合に使います。

<% form_tag do %>
  <%= text_field_tag :フィールド名, フィールド値 %>
<% end %>


各actionに対するフィルタを設定することができる。
Controllerならどこで設定してもよいのだが、各Controllerの親クラスであるApplicationControllerで設定すると一気に全体に適用できる。
exceptはフィルタ適用を除外するactionの名前。

class ApplicationController < ActionController::Base
  before_filter :フィルタメソッド名, :except => :メソッド名

protected
  def フィルタメソッド
    #何か処理
  end
end