Avoir les rails suivants vue (HAML):Nesting haml boucles pour obtenir "Réduire bootstrap-collapse.js" fonctionne correctement dans les vues Rails
.row
.span7
%h1 Listing categories
%p
- @categories.each do |category|
.accordion-group
.accordion-heading
.accordion-toggle{"data-toggle" => "collapse", "data-target" => "##{category.path}"}= link_to category.name, "##{category.path}"
- @competitors.each do |category_path, competitors|
.accordion-body.table.collapse.in{:id => "#{category_path}"}
%table.accordion-inner
%thead
%tr
%th= "Project"
%th= "Description"
%th= "Watchers"
%th= "Forks"
%tbody
- competitors.each do |competitor|
%tr
%td
= link_to "#{competitor["html_url"]}".sub("https:\/\/github.com\/", ""), "#{competitor["html_url"]}"
%td
%span »
= competitor["description"]
%td
%span.badge.badge-info= competitor["watchers"]
%td
%span.badge.badge-warning= competitor["forks"]
J'ai besoin classe css .accordion-group
, contenir à la fois .accordion-heading
(qui est à l'intérieur de la boucle @ categories.each) et .accordion-body
(qui se trouve dans l'autre boucle: boucle @competitors.each
).
Notez les deux boucles rubis .each
, sont au même « niveau de noeud » dans haml, alors que leurs classes et .accordion-body
.accordion-heading
css doivent être dans .accordion-group
conteneur de classe css.
Le html resoulting dont j'ai besoin, est comme ce qui suit:
<div class="accordion-group">
<div class="accordion-heading">
<div class="accordion-body in collapse" id="collapse_id">
</div>
<div class="accordion-group">
<div class="accordion-heading">
<div class="accordion-body in collapse" id="collapse_id">
</div>
<div class="accordion-group">
<div class="accordion-heading">
<div class="accordion-body in collapse" id="collapse_id">
</div>
...
... alors que je reçois actuellement ce mauvais code html:
<div class="accordion-group">
<div class="accordion-heading">
</div>
<div class="accordion-group">
<div class="accordion-heading">
</div>
<div class="accordion-group">
<div class="accordion-heading">
</div>
...
<div class="accordion-body in collapse" id="collapse_id">
<div class="accordion-body in collapse" id="collapse_id">
<div class="accordion-body in collapse" id="collapse_id">
...
Je ne peux pas trouver le bon chemin pour tiret haml ...
Est-ce que '@ catégories' et' @ concurrents 'ont toujours la même taille? – matt