Recientemente he estado mirando Rails y he notado que hay muchas referencias a current_user
. ¿Esto solo proviene de Devise? y ¿tengo que definirlo manualmente yo mismo incluso si uso Devise? ¿Existen requisitos previos para el uso current_user
(como la existencia de sesiones, usuarios, etc.)?
ruby-on-rails
patata grande
fuente
fuente
session
está integrado en Rails. De forma predeterminada, utiliza una cookie para mantener el estado de un cliente entre solicitudes. Consulte guides.rubyonrails.org/security.html#sessions para obtener más información.return unless session[:user_id]
como se muestra en la respuesta de Zach; sin eso, cadaif current_user
verificación mientras esté desconectado activará otra consulta de base de datos.Sí,
current_user
usasession
. Puede hacer algo similar en el controlador de su aplicación si desea implementar su propia autenticación:fuente
session
es algo asíparams
, excepto que persiste para múltiples solicitudes. Puede usarlo para almacenar cualquier tipo de parámetro persistente exclusivo de sus usuarios individuales (hasta que su sesión expire o cierren la sesión). Puede leer más sobre esto aquí: ActionController: Acceso a la sesión