module ComfortableMexicanSofa::HasRevisions::ClassMethods

Public Instance Methods

cms_has_revisions_for(*fields) click to toggle source
# File lib/comfortable_mexican_sofa/extensions/has_revisions.rb, line 11
def cms_has_revisions_for(*fields)
  include ComfortableMexicanSofa::HasRevisions::InstanceMethods

  attr_accessor :revision_data

  has_many :revisions,
    as:         :record,
    dependent:  :destroy,
    class_name: "Comfy::Cms::Revision"

  before_save :prepare_revision
  after_save  :create_revision

  define_method(:revision_fields) do
    fields.collect(&:to_s)
  end
end