Module: Anony::Anonymisable

Defined in:
lib/anony/anonymisable.rb

Overview

The main Anony object to include in your ActiveRecord class.

Examples:

Using in a single model

class Manager < ApplicationRecord
  include Anony::Anonymisable
end

Making this available to your whole application

class ApplicationRecord < ActiveRecord::Base
  include Anony::Anonymisable
end

Defined Under Namespace

Modules: ClassMethods

Instance Method Summary collapse

Instance Method Details

#anonymise!Anony::Result

Run all anonymisation strategies on the model instance before saving it.

Examples:

manager = Manager.first
manager.anonymise!

Returns:

  • (Anony::Result)

    described if the save was successful, and the fields or errors created



66
67
68
69
70
71
72
73
# File 'lib/anony/anonymisable.rb', line 66

def anonymise!
  raise ArgumentError, ".anonymise not yet invoked" unless self.class.anonymise_config

  self.class.anonymise_config.validate!
  self.class.anonymise_config.apply(self)
rescue ActiveRecord::RecordNotSaved, ActiveRecord::RecordNotDestroyed => e
  Result.failed(e)
end