已审核 - 获取可审核对象的实例

Audited - get instance of auditable object

我想使用来自可审计类型实例的更多信息来扩展审计记录。

我已将审计行为扩展 config/initializers/audited.rb

class AuditExtension < Audited::Audit
  before_save :resolve_association

  def resolve_association
    puts auditable_id
    puts auditable_type
    x = auditable_type.constantize.find(auditable_id)
    ...
  end
end

Audited.config do |config|
  config.audit_class = AuditExtension
end

除了x初始化的方式,还有什么其他方法可以获取被审计的class的实例吗?

您可以在 Audit 实例上调用 #auditable,您必须访问被审计的对象(例如 Audited::Audit.first.auditable)。由于这是一个回调,您应该可以访问它。