Module: ActiveRecord::ObscuredId
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/activerecord-obscuredid.rb,
lib/activerecord-obscuredid/base32.rb,
lib/activerecord-obscuredid/version.rb,
lib/activerecord-obscuredid/configuration.rb,
lib/activerecord-obscuredid/extensions/email_address.rb
Overview
Active Record Obscured Id
Defined Under Namespace
Modules: Base32, ClassMethods, Extensions Classes: Configuration
Constant Summary collapse
- VERSION =
'0.2.0'
Class Attribute Summary collapse
Class Method Summary collapse
Instance Method Summary collapse
-
#obscured_id ⇒ String
Generates an obscured representation of the record's ID.
Class Attribute Details
.config ⇒ Object
19 20 21 |
# File 'lib/activerecord-obscuredid/configuration.rb', line 19 def config @config ||= Configuration.new end |
Class Method Details
.configure {|config| ... } ⇒ Object
23 24 25 |
# File 'lib/activerecord-obscuredid/configuration.rb', line 23 def configure yield(config) end |
Instance Method Details
#obscured_id ⇒ String
Generates an obscured representation of the record's ID.
This method encodes the ID of the current record using a Base32 encoding scheme. The resulting obscured ID is a down-cased string that does not directly reveal the actual ID, making it suitable for public references (e.g., in URLs or emails). It is case-insensitive making it ideal for use cases like constructing email addresses or URLs, where case sensitivity might be an issue.
59 |
# File 'lib/activerecord-obscuredid.rb', line 59 def obscured_id = Base32.encode(id.to_s).downcase |