Dynamically labeling div ids in Rails 3

html, ruby, ruby-on-rails-3

Solution

<% info_section.info_sub_sections.each do |sub_section| %>
  <div id="info_<%= sub_section.id %>" class="accordion-body collapse">
    <div class="acccordion-inner">
      <%= render 'info_sections/sub_box', info_sub_box: sub_section %>
    </div>
  </div>
<% end %>

(Or whatever you want to name the div; you could use `each_with_index`, and so on.)

Problem

I'm attempting to dynamically construct an accordion with rails-bootstrap, however the div ids all end up being statically assigned to the same thing, "info", so only the first module will expand or collapse. How do I dynamically label the div id="info" using ruby? ``` <div class="accordion" id="categories"> <div class="accordion-group"> <div class="accordion-heading"> <a class="accordion-toggle btn" data-toggle="collapse" data-parent="#accordion" href="#info"> <h2><%= info_section.name%></h2> </a> <div id="info" class="accordion-body collapse"> <div class="acccordion-inner"> <% info_section.info_sub_sections.each do |sub_section| %> <%= render 'info_sections/sub_box', info_sub_box: sub_section %> <% end %> </div> </div> </div> </div> ``` Thanks!

Original source