Наразі я генерую 8-символьний псевдослучайний рядок верхнього регістру для "A" .. "Z":
value = ""; 8.times{value << (65 + rand(25)).chr}
але це не виглядає чисто, і це не може бути передано як аргумент, оскільки це не одне твердження. Щоб отримати рядок змішаного регістру "a" .. "z" плюс "A" .. "Z", я змінив його на:
value = ""; 8.times{value << ((rand(2)==1?65:97) + rand(25)).chr}
але це схоже на сміття.
Хтось має кращий метод?
reset_user_password!(random_string)
деdef random_string; SecureRandom.urlsafe_base64(20) end
securerandom.urlsafe_base64