Está definido por varias gemas, por ejemplo, Devise
Deberá almacenar el user_id en algún lugar, generalmente en la sesión después de iniciar sesión. También asume que su aplicación tiene y necesita usuarios, autenticación, etc.
Normalmente, es algo como:
class ApplicationController < ActionController::Base
def current_user
return unless session[:user_id]
@current_user ||= User.find(session[:user_id])
end
end
Esto supone que existe la clase de usuario, por ejemplo #{Rails.root}/app/models/user.rb
.
Actualizado: evita consultas adicionales a la base de datos cuando no hay un usuario actual.