【发布时间】:2011-03-07 17:12:41
【问题描述】:
我想使用 ActiveRecord 的 before_save 回调来帮助我跟踪哪些用户编辑了哪些记录。例如
class Foo < ActiveRecord::Base
before_save
self.edited_by = curent_user.username
end
....
end
我在这里遇到的问题是 Foo 不知道 current_user 是什么,因为它来自控制器助手。
我意识到,我可以在控制器中完成这一切。但如果可以的话,最好把它放到 before_save 回调中。
【问题讨论】:
-
您可能需要考虑缓存清除器(他们可以访问模型和会话(current_user 等)):guides.rubyonrails.org/caching_with_rails.html#sweepers
标签: ruby-on-rails activerecord callback