2007年10月23日

userstampをつかってみた

作成,編集をしたユーザの履歴を残すためのプラグイン

acts_as_authenticatedと共に使ってみた。

参考:http://delynnberry.com/projects/userstamp

>script/plugin install svn://delynnberry.com/code/plugins/userstamp/trunk


class User < ActiveRecord::Base
cattr_accessor :current_user
end


migrationファイルで

create_table :posts do |t|
  …
 # Userstamp用
t.column :created_by, :integer
t.column :updated_by, :integer
end

を加えてrake db:migrate

class Post < ActiveRecord::Base
belongs_to :created_by, :class_name => "User", :foreign_key => "created_by"
belongs_to :updated_by, :class_name => "User", :foreign_key => "updated_by"
end


userstampを使うコントローラに

before_filter :set_current_user
protected
def set_current_user
User.current_user = current_user
end


これで Postモデルを saveするときに、現在のユーザがcreated_byもしくはupdated_byに自動で入る。

取り出す際は、これらのカラムにUserが入っているような形なので
view

@post.updated_by.login

でログインIDがとれたりする。
タグ:Rails
posted by sistailsnow at 09:47| Comment(0) | TrackBack(0) | Railを走ってみた | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/62025144
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。