2009-11-26 14 views

Respuesta

3

Parece que Blogpost describe lo que quiere lograr.

El modelo de usuario utiliza un perishable_token que se utiliza para una url de verificación enviada a la dirección de correo electrónico del usuario en la creación de la cuenta. Cuando el usuario hace clic en la URL en el correo que desencadena una acción que establece el modelo de usuario correspondiente a verified

Básicamente lo que necesita para validar UserSession s dependiendo de si el User correspondiente ya está verificado.

Ver:

+0

¡Excelente publicación! ¡Ha sido muy útil! –

0

Puede que le resulte útil auth_helpers. Es "una colección de módulos y controlador para ampliar sus modelos Authlogic. Actualmente admite el comportamiento confirmable y recuperable".

+1

tenga en cuenta que el proyecto auth_helpers parece haber sido abandonado por el desarrollador original y que casi todos los enlaces en el archivo Léame están rotos – srboisvert

1

El enlace sugerido por Lennart es un buen punto de partida. Sin embargo, un rápido vistazo al código revela estas salvedades:

  1. Notifier#deliver_password_reset_instructions es sin aplicarse todavía se llama desde User#deliver_password_reset_instructions!
  2. notificador es una clase mal llamada. Un programa de correo generalmente envía notificaciones, por lo que recomendaría nombrar el usuario de la clase de correo electrónico para indicar para qué está enviando el correo. Además, dado que los anuncios publicitarios actualmente residen en aplicaciones/modelos (hasta Rails 3.0), al agregar un anuncio publicitario al nombre de la clase queda claro que se trata de una clase de correo y no de un modelo ActiveRecord.
  3. Los anunciantes no deben figurar en el modelo. Deben estar en sus acciones de controlador. Ask DHH.

¡Buena suerte! Pregunta si te quedas atascado.

0

Muy tarde a la pregunta pero here es una plantilla con verificación automática de correo electrónico.

1

¿Hay alguna razón por la cual no podría tener un UserObserver (o ActivationObserver si tiene múltiples modelos de autenticación, por ejemplo, administrador, usuario, representante de servicio al cliente, etc.) que enviaron un correo electrónico una vez que alguien fue creado?

Cuestiones relacionadas