Ale*_*vik 5 ruby activerecord ruby-on-rails paper-trail-gem
TL;DR:如何在 paper_trail之间nil和blank中跳过更改?
我使用https://github.com/airblade/paper_trail来记录几个ActiveRecord对象中的数据更改。从我的客户的角度来看,某些更改是无用的,因此我需要忽略nil和blank(空字符串)之间的所有更改。
paper_trail好像没有这样的选择。您可以使用:skip选项跳过某些字段。您能否传入一个“决定”有条件地跳过更改的 Proc?
您可以添加一个过程来定义是否应保存新版本,代码应为:
class ExampleModel < ActiveRecord::Base
has_paper_trail :if => Proc.new { |t| t.attr_1.present? && t.attr_2.present? }
end
Run Code Online (Sandbox Code Playgroud)
顺便:unless也支持一下!这适用于 PaperTrail >= 4.0
| 归档时间: |
|
| 查看次数: |
482 次 |
| 最近记录: |