1

Audited在我的 Rails 应用程序中使用 gem。我想创建一种打印审计记录的方法,以便我可以获取用户更改的内容或对象更改的内容。目前,我已经设置了一个print_audit对我使用的每个对象调用的方法Audited。但这似乎是非常错误的。我想覆盖to_s审计模型上的方法......但我不确定这样做的正确方法是什么......该方法是否不正确,如果不正确,我将如何去做?

4

2 回答 2

2

现在有一种更直接的方法来实现这一点,正如官方文档中所定义的那样这是一个将 to_s 添加到每个 Audit 实例的代码段:

# config/initializers/audited.rb
class CustomAudit < Audited::Audit
  def to_s
    "This overrides the default to_s method!"
  end
end

Audited.config do |config|
  config.audit_class = CustomAudit
end
于 2018-04-16T21:15:59.520 回答
1

我使用了以下方法,因为我发现它更干净。

添加文件: config/initializers/audited_additional_methods.rb

module Audited
  module Adapters
    module ActiveRecord
      class Audit < ::ActiveRecord::Base
        def to_s
          "Added my new to_s logic here"
        end
      end
    end
  end
end
于 2015-05-09T17:05:22.257 回答