Module: SafeMemoize::Rails::RequestScoped

Defined in:
lib/safe_memoize/rails/request_scoped.rb

Overview

Include in a Rails controller to automatically reset instance memos after each request. In non-controller classes (service objects, models), include it to gain reset_request_memos and call it manually at the end of a request or job.

The class must also prepend SafeMemoize for reset_all_memos to exist.

Example — controller: class ApplicationController < ActionController::Base prepend SafeMemoize include SafeMemoize::Rails::RequestScoped end

Example — service object with middleware tracking: class ReportService prepend SafeMemoize include SafeMemoize::Rails::RequestScoped

def initialize
  SafeMemoize::Rails.track(self)
end

end

Instance Method Summary collapse

Instance Method Details

#reset_request_memosvoid

This method returns an undefined value.

Resets all memoized values on this instance. Delegates to PublicMethods#reset_all_memos.



35
36
37
# File 'lib/safe_memoize/rails/request_scoped.rb', line 35

def reset_request_memos
  reset_all_memos
end