module Lite::Uxid::Record::Hashid

Public Instance Methods

find_by_uxid(uxid) click to toggle source
# File lib/lite/uxid/record/hashid.rb, line 17
def find_by_uxid(uxid)
  decoded_id = Lite::Uxid::Hashid.decode(uxid)
  find_by(id: decoded_id)
end
find_by_uxid!(uxid) click to toggle source
# File lib/lite/uxid/record/hashid.rb, line 22
def find_by_uxid!(uxid)
  record = find_by_uxid(uxid)
  return record unless record.nil?

  raise ActiveRecord::RecordNotFound
end
uxid_to_id() click to toggle source
# File lib/lite/uxid/record/hashid.rb, line 30
def uxid_to_id
  return unless respond_to?(:uxid)

  Lite::Uxid::Hashid.decode(uxid)
end

Private Instance Methods

callback_generate_uxid!() click to toggle source
# File lib/lite/uxid/record/hashid.rb, line 38
def callback_generate_uxid!
  hash = Lite::Uxid::Hashid.encode(id)
  update_column(:uxid, hash)
end