2

私はこれを私の見解に持っていますが、それをクリーンアップして、ヘルパーのメソッド内にすべて入れたいと思います。

divといくつかのコンテンツをcontent_tag内に配置する方法を知っています。しかし、どうすればパーシャルを渡すことができますか?

 <% if show_content?(flash[:invitation]) %>
       <div id="invite_box">
       <%= render :partial => 'user/invite', :locals => {:user => @user } %>
       </div>
       <% elsif show_content?(flash[:confirmation]) %>
       <%= render :partial => 'user/invite_confirmation' %>
       <% end %>
4

1 に答える 1

4

inviteパーシャルを常に div でラップする必要がある場合は、invite_boxその div をパーシャル内に配置するのが理にかなっています。

ただし、ヘルパーでこれを行うことができます。

def show_invite_info
  if show_content?(flash[:invitation])
    content_tag(:div, :id => "invite_box") do
      render :partial => "user/invite", :locals => {:user => @user}
    end
  elsif show_content?(flash[:confirmation])
    render :partial => "user/invite_confirmation"
  end
end

次に、ビューで次のようにします。

<%= show_invite_info %>
于 2011-02-27T08:59:04.607 に答える