Railscast 262 different partial in helper

Hi RoR Community,

in Ryan Bates Railscasts Episode #262 he put the index code

<% for message in @messages %>   <div class="message">     <div class="created_at"><%= message.created_at.strftime("%B %d, %Y") %></div>     <div class="content">       <%= message.content %>     </div>     <div class="actions">       <%= link_to "Reply", new_message_path(:parent_id => message) %> |       <%= link_to "Destroy", message, :confirm => "Are you sure?", :method => :delete %>     </div>   </div> <% end %>

in to a partial _message.html.erb

and call it with

<%= nested_messages @messages.arrange(:order => :created_at) %>

and the following helper method

module MessagesHelper   def nested_messages(messages)     messages.map do |message, sub_messages|       render(message) + content_tag(:div, nested_messages(sub_messages), :class => "nested_messages")     end.join.html_safe   end end

I tried the same and it works fine. My Question ist, how do I can force the helper to render in a different partial like '_old_message' or something else. I tried a lot but everytime the helper render the _message.html.erb partial.

Thanks ahead for any help!

Regs

Herman

Hi, in the MessageHelper module, you could change the nested_messages method to look like this;

  def nested_messages(messages)     messages.map do |message, sub_messages|       render(:partial => "old_message", :locals => {:message => message}) + content_tag(:div, nested_messages(sub_messages), :class => "nested_messages")     end.join.html_safe   end

Just change the partial option to what ever file you want to render.

Hi Justin,

works fine!!

Thanks a lot!

Regs

Herman

Justin Mcginnis wrote in post #1029688: