ruby-on-rails - gema - rails devise confirmable email
Rails 3 Devise el filtro de confirmaciĆ³n (1)
Me pregunto si es posible requerir de forma selectiva la confirmación de ciertas acciones del controlador usando Devise.
Básicamente: deseo que los usuarios se registren en una cuenta (lo que activará un correo electrónico de confirmación), que inicien sesión automáticamente y que puedan explorar de manera inmediata ciertas partes del sitio como usuario registrado (pero aún no confirmado) . El acceso a ciertas áreas (por ejemplo, pago) requeriría que el usuario primero confirme su correo electrónico .
Espero algo como before_filter: user_is_confirmed, only: [payment_related_stuff]
Busqué por un tiempo y no pude encontrar una manera de hacerlo de la caja, así que pensé en crear una solución hacky en la que todas las áreas posiblemente protegidas aún requirieran before_filter: authenticate!
, pero anularía la creación de Devise SessionsController para permitir el acceso permisible a ciertas áreas antes de la confirmación. Sin embargo, no estoy seguro de si este es el camino correcto a seguir.
Usando la solución incorporada en el allow_unconfirmed_access_for 1.year
, podrías usar allow_unconfirmed_access_for 1.year
en combinación con current_user.confirmed?
en tu filtro anterior