使用模型实例属性填充public_activity参数

pdu*_*ler 1 ruby-on-rails-4

我试图填充parameters我的活动模型的属性(来自public_activity gem),但没有成功.

class Project < ActiveRecord::Base
  include PublicActivity::Model

  tracked owner: ->(controller, model) { controller && controller.current_user },
          parameters: ->(controller, model){
            {foo: 'bar'}
          }
end
Run Code Online (Sandbox Code Playgroud)

第一个问题是,当我更新项目时,参数哈希总是为空.第二个问题是,它->(controller, model)接收控制器和模型类,但不接收实例.我的目标是将更新集中的两个字段更新为参数(id和字符串).

我怎样才能做到这一点?

小智 8

有点迟到但仍然可能对其他人有帮助,他们试图在PublicActivity中使用默认参数哈希.根据官方文件:

class Article < ActiveRecord::Base
      include PublicActivity::Model
      tracked :params => {
          :title => :title,
          :author_name => "Michael",
          :category_name => proc {|controller, model_instance| model_instance.category.name},
          :summary => proc {|controller, model_instance| truncate(model.text, :length => 30)}
      }
    end
Run Code Online (Sandbox Code Playgroud)

您可以参考:http: //rubydoc.info/gems/public_activity/PublicActivity/Tracked/ClassMethods 了解更多详情