То, чего я пытаюсь добиться, - это только отслеживать версии полей, если выполняются определенные условия. Например: field_a, field_b, field_ c, если условие_a истинно, и field_d, field_e, field_f, если условие_b истинно.
Мой код в моем модале:
has_paper_trail only: [:field_a, :field_b, :field_c], if: Proc.new { |cand| cand.condition_a? }
has_paper_trail only: [:field_d, :field_e, :field_f], if: Proc.new { |cand| cand.condition_b? }
(.condition_a?
и .condition_b?
являются частными методами для моей модели, которая возвращает логическое значение)
Но в этом случае, кажется, работает только вторая строка кода (но выполняется дважды).
Возможно ли вообще достичь такого поведения?