ruby on rails 3 - tutorial - Autenticación de Rails 3: Authlogic vs Devise
rspec rails devise (6)
Al igual que el autor de la pregunta original, yo también siempre había usado AuthLogic en los 2.3 días de Rails, pero tomé la decisión de usar Idear cuando AuthLogic no estaba listo para Rails 3.1 (cuando estaba en la etapa RC). En general, he hecho que Devise haga lo que quiero pero no estoy contento y ojalá no hubiera hecho el cambio.
La autenticación de usuario parece simple en la superficie y es ideal para "componentes", pero tantas veces que desea permitir que un usuario interactúe con su sitio por completo antes de requerir el inicio de sesión y Devise lo hace más difícil.
Sí, características como poner after_sign_in_path_for / after_sign_up_path_for en el trabajo del controlador de aplicaciones, pero estas funciones realmente no pretenden hacer más que devolver un camino y si está utilizando Devise, se encontrará metiendo grandes bloques de código en ellas. Funciona, pero tener tu propio controlador de usuario para manejar las acciones relacionadas con el usuario es, para mí, más elegante.
Siempre he usado Authlogic en Rails 2.3 pero ahora que estoy usando Rails 3 creo que podría probar una nueva solución de autenticación.
¿Cómo se compara Devise con Authlogic? ¿Cuáles son sus diferencias?
Encontré a Devise demasiado obstinado para mí. Si solo quiere aceptar la forma en que hace las cosas de la caja, es bueno y fácil ponerse en marcha. Tenía algunos requisitos específicos y me encontré escribiendo cosas para redirigir a Devise, así que terminé arrancándolo y actualizando Authlogic en Rails3.
Los he usado ambos, pero no extensivamente. En mi último proyecto, le di una oportunidad a Devise. Terminé usando Rails-Warden en su lugar.
Me gusta Devise. También puedes usar OmniAuth con Devise. Creo que el proyecto Devise es muy activo y tiene un gran respaldo en internet.
Si necesita autenticación OAuth múltiple en Twitter, Facebook, LinkedIn y Google, puede usar la gema OmniAuth junto con Authlogic. Es fácil de descifrar y le brinda control total sobre lo que sucede a medida que los usuarios se autentican desde diferentes sitios sociales, lo que hace en authorizations_controller.rb.
para idear, si desea enviar un inicio de sesión exitoso a "welcome / index", agregue a routes.rb
namespace :user do
root :to => "welcome#index"
end
como se documentó https://github.com/plataformatec/devise/wiki/How-To:-Redirect-to-a-specific-page-on-successful-sign-in
personalmente, me gusta idear. cree que es genial y supongo que puede llamarlo "obstinado", pero esas opiniones pueden sobrescribirse fácilmente.