Module: Pay::NanoId
- Defined in:
- lib/pay/nano_id.rb
Constant Summary collapse
- ALPHABET =
Generates unique IDs - faster than UUID
"_-0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".freeze
- ALPHABET_SIZE =
ALPHABET.size
Class Method Summary collapse
Class Method Details
.generate(size: 21) ⇒ Object
7 8 9 10 11 |
# File 'lib/pay/nano_id.rb', line 7 def self.generate(size: 21) id = +"" size.times { id << ALPHABET[(Random.rand * ALPHABET_SIZE).floor] } id end |