Skip to content

Instantly share code, notes, and snippets.

@dobs
Last active August 29, 2015 14:03
Show Gist options
  • Save dobs/1fdc5418da74690548c6 to your computer and use it in GitHub Desktop.
Save dobs/1fdc5418da74690548c6 to your computer and use it in GitHub Desktop.
module UniquelyIdentified
extend ActiveSupport::Concern
included do
before_create :assign_unique_id
end
protected
def assign_unique_id
self.unique_id = generate_unique_id
end
def generate_unique_id
while unique_id = SecureRandom.hex(24)
return unique_id if self.class.find_by_unique_id(unique_id).nil?
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment