quiero obligar a todos los usuarios aceptan los términos de servicio, al igual que se describe aquí:¿Cree que el usuario debe aceptar los términos de servicio?
Ruby on Rails/Devise - Bypassing custom validation option in model when resetting password
Sin embargo, hay 2 requisitos que hacen que el enfoque anterior no encaja.
1) Los usuarios no son autoregistrados, sino que son creados por un administrador del sistema. El administrador obviamente no puede aceptar los términos y condiciones en nombre del usuario. Se debe solicitar al usuario que acepte los términos y condiciones en su primer inicio de sesión.
2) Si los términos y condiciones cambian después del hecho. Los usuarios deben volver a aceptar los nuevos términos en los inicios de sesión posteriores.
Parecen flujos de trabajo bastante estándar. ¿El dispositivo proporciona alguna forma de lograr esto?
De lo contrario, creo que esta verificación deberá implementarse en un before_filter en mi controlador de aplicación. (Se siente sucio mezclando la autenticación con la lógica de la aplicación ...)
¿Tendré que recurrir a esto o alguien puede sugerir una manera mejor?
Gracias
Creo que devise/auth no tiene nada que ver con la lógica de negocios (términos). Tendrás que hacer un filtro antes en el controlador de la aplicación. No estás mezclando auth con lógica comercial. El usuario está autenticado pero no puede acceder a ninguna página hasta que acepte los términos de uso – bcd