rails español ejemplos current_user create ruby-on-rails devise

ruby on rails - español - ¿Cómo generar automáticamente contraseñas en Rails Devise?



devise rails español (3)

(advertencia rápida: soy un newb rieles)

Probé el Generador de token pero no hace lo que piensas (mira los documentos)

(Estoy usando rieles 3.0.5, y diseño 1.1.7)

Lo que descubrí es que Devise generará todas esas cosas para ti en segundo plano cuando lo hagas:

User.create!(:email => "[email protected]", :password => "password")

Devise debe crear la contraseña cifrada y sal para usted. (abre una consola y pruébala)

Estoy probando cómo funciona Devise con uno de mis proyectos para la autenticación de usuarios. Existe un requisito del usuario para que su administrador pueda generar un lote de nombre de usuario y contraseña de usuario de vez en cuando, y luego el administrador enviará por correo electrónico el nuevo nombre de usuario y contraseña a sus usuarios.

Supongamos que el administrador tiene conocimiento de SQL directo en la base de datos MySQL, ¿cómo pueden los nombres de usuario / contraseñas generados reconocidos por Devise? ¡Gracias!


Una opción sería usar Devise.generate_token. Es decir

password = User.generate_token(''password'') User.create!(:email => ''[email protected]'', :password => password, :password_confirmation => password)

Esta opción no ha estado disponible en Devise durante bastante tiempo. Por favor, consulte la otra respuesta (friendly_token).


Utilice el método Devise.friendly_token :

password_length = 6 password = Devise.friendly_token.first(password_length) User.create!(:email => ''[email protected]'', :password => password, :password_confirmation => password)

FYI: Devise.friendly_token devuelve un token de 20 caracteres. En el ejemplo anterior, estamos cortando los primeros caracteres de longitud de password_length del token generado utilizando el String#first método String#first que proporciona Rails.