Module: RenderAsync::ViewHelper
- Defined in:
- lib/render_async/view_helper.rb
Instance Method Summary collapse
- #render_async(path, options = {}, &placeholder) ⇒ Object
- #render_async_cache(path, options = {}, &placeholder) ⇒ Object
- #render_async_cache_key(path) ⇒ Object
Instance Method Details
#render_async(path, options = {}, &placeholder) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/render_async/view_helper.rb', line 20 def render_async(path, = {}, &placeholder) container_id = "render_async_#{SecureRandom.hex(5)}#{Time.now.to_i}" event_name = .delete(:event_name) placeholder = capture(&placeholder) if block_given? render 'render_async/render_async', container_id: container_id, path: path, html_options: , event_name: event_name, placeholder: placeholder end |
#render_async_cache(path, options = {}, &placeholder) ⇒ Object
10 11 12 13 14 15 16 17 18 |
# File 'lib/render_async/view_helper.rb', line 10 def render_async_cache(path, = {}, &placeholder) cached_view = Rails.cache.read("views/#{render_async_cache_key(path)}") if cached_view.present? render :html => cached_view.html_safe else render_async(path, , &placeholder) end end |
#render_async_cache_key(path) ⇒ Object
6 7 8 |
# File 'lib/render_async/view_helper.rb', line 6 def render_async_cache_key(path) "render_async_#{path}" end |