とりあえず、メモ。
ModelではControllerのメソッド定義ができる。
user.rb =>
class User < ActiveRecord::Base
# 認証
def self.authenticate(loginid, pass)
user = find_by_loginid(loginid)
if user and user.hashed_password == hashed_password(pass, user.salt)
user
else
nil
end
end
end
users_controller.rb =>
class UsersController < ApplicationController
def authentication
loginid = params[:loginid]
password = params[:password]
user = User.authenticate(loginid, password)
if user
session[:user] = user.id
redirect_to contents_path
else
session[:user] = nil
redirect_to '/'
end
end
end
みたいな感じ。即興で書いたから動くかどうか知らんけどw
次にHelperについて
すごい初歩的だけど
HelperはViewのメソッド定義ができる
user_messages_helper =>
module UserMessageHelper
def link_to_destroy_user_message(user_message)
if params[:condition] == 'delete' #ゴミ箱を表示
link_to '削除', user_message_path(:id => user_message),
:confirm => '削除します。よろしいですか?', :method => :delete
else #ゴミ箱以外を表示しているなら
link_to 'ゴミ箱へ', user_message_path(:id => user_message),
:confirm => 'ゴミ箱へ移動します。よろしいですか?', :method => :delete
end
end
end
て感じ。
Viewでは
<%= link_to_destroy_user_message(user_message) %>
というメソッドを使えるようになる。
まぁ、あんまり使わなさそうだけど
とりあえず、メモ。w
2008年6月13日金曜日
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿