Module: AsyncRender::MemoizedHelper
- Includes:
- Utils
- Defined in:
- lib/async_render/memoized_helper.rb
Instance Method Summary collapse
Methods included from Utils
#build_memoized_render_key, #generate_token, #normalize_locals
Instance Method Details
#memoized_render(partial, locals = nil, formats: [ :html ], **locals_kw) ⇒ Object
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/async_render/memoized_helper.rb', line 5 def memoized_render(partial, locals = nil, formats: [ :html ], **locals_kw) return render(partial, locals) unless AsyncRender.enabled effective_locals = normalize_locals(locals, locals_kw) key = build_memoized_render_key(partial, effective_locals) AsyncRender.memoized_cache.compute_if_absent(key) do Rails.logger.info "[AsyncRender] Memoizing: #{partial}" if Rails.env.local? ApplicationController.renderer.render(partial: partial, locals: effective_locals, formats: formats) end end |