Я использую Ahoy Emails Gem для анализа электронной почты.Для отслеживания сообщений электронной почты они просто
@ahoy_message = AhoyEmail.message_model.new
ahoy_message.token = generate_token
Метод генерации токена, как,
def generate_token
SecureRandom.urlsafe_base64(32).gsub(/[\-_]/, "").first(32)
end
Я подозреваю, что может быть дублирование в сгенерированных токенах, я могу проверить, сгенерированы ли сгенерированные токеныКаждый раз токен уникален, поэтому я пытаюсь изменить метод генерации токена, как показано ниже:
def generate_token
URI.escape(Base64.encode64 "#{Time.now.to_f},#{@mail.id}") # @mail is object in db
end
Хорошо ли использовать метод по умолчанию, иначе я могу использовать что-то, связанное со временем, для создания уникальных токенов?