Проблема здесь в том, что вы ссылаетесь на объект запроса, который не существует в области видимости модуля.
Вы должны передать его или хранить где-нибудь.
module MyModule
mattr_accessor :request
def self.current_ip
request.env['REMOTE_ADDR']
end
end
# store the request using a before filter
# or similar approach
MyModule.request = request
MyModule::current_ip
В зависимости от вашего случая, может быть более элегантное решение.