lazy_content_tag

普通にviewに<%= @hoge %>とか書くとサーバー側で@hogeを準備し終えてから、
render処理が走ってブラウザにresponseが帰ると思うのですが、
先に画面表示して後でajaxで取得してほしい時に使える?
のようなイメージ。

Description

うまく言葉にできない。

DEMO:

controller.rb:

def index
  # コレはviewのlazy_content_tagからのみ呼ばれる処理 ※引数は目印
  lazy_respond_to(:gender_chart) do
    @chart = xxx
    # 最後にviewから渡された処理の結果を勝手に返す
    # high_chart(“hogeid", @chart) の結果をresponseとして返す
  end
end

index.html.erb:


<%= Ajaxで呼び出し元アクションの lazy_respond_to ブロック内の処理結果を受け取り、囲みタグの中に inner html する -%>
<%= lazy_content_tag :div, :gender_chart, class: “hoge" do %>
  <% high_chart(“hogeid", @chart) # この処理をajaxでcontrollerに伝えるのが無理?文字列で送るのはアウツな気がする %>
<% end %>

Features

  • Awesome function
  • Awesome UI
  • ...

For more information, see awesome-tool --help.

Requirement

  • Requirement
  • Requirement
  • Requirement

Usage

  1. Usage
  2. Usage
  3. Usage

Installation

$ git clone https://github.com/b4b4r07/awesome-tool

Anything Else

AnythingAnythingAnything AnythingAnythingAnything AnythingAnythingAnything

Author

@b4b4r07

License

MIT