【发布时间】:2012-11-03 07:26:04
【问题描述】:
我有一个小型 Rails 应用程序。我想在其中添加审计跟踪。基本上是在添加新用户时。它将在AuditTrailUsers 表中插入一行,其中新的user_id 创建并登录用户的user_id。
我正在考虑为此使用 rails 回调 before_save。但是,我不确定这是否可行。
假设我有model/Users.rb 和model/AuditTrailUser.rb
class User < ActiveRecord::Base
validates_presence_of :userid, :password
before_save :insert_audit
def self.authenticate(userid, password)
user = self.find_by_userid_and_password(userid, password)
user
end
##implement insert_audit
end
我如何实现insert_audit,以便它接收一个用户ID(登录用户),以便在调用AuditTrailUser.create(...) 时将其传递给AuditTrailUser。
如果我传入登录用户的用户 ID...那么我必须在每个地方显式调用 before_save...
我是 Rails 新手。
【问题讨论】: