0

ifステートメントを使用して、アイテムが同じhtmlコンテナー内にあるか、新しいコンテナーを取得するかを判別したいと思います。ネストの処理方法が原因で、hamlを使用して同じコンテナー内に複数のアイテムを取得できないようです。

例:

%div.line.boards.main_boards
  - @boards.each_with_index do |board, index|
    - @board = board
    -if index == 0
      %div.unit.size1of5
    -if index <= 1
      = render :partial => "board_projects"
    -if index == 2
      %div.unit.size4of5
        = render :partial => "board_projects"

この例では、要素%div.unit.size1of5は、インデックス0と1の両方のアイテムをラップアラウンドする必要があります。ただし、divが閉じた後にそれらを配置します。パーシャルがレンダリングされるコードをインデントして、div内にネストすると、インデックス0の項目のみがプルされます。

これはhamlでどのように達成されますか?

4

1 に答える 1

1

次のように、パラメータをdivのクラスに渡すことができます。

.unit{:class => "size#{index}"}
  = render :partial => "board_projects"

そして、Ruby/HAMLの問題ではなくCSSの問題にします。

于 2012-05-11T17:22:01.557 に答える