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"

然后让它成为 CSS 问题而不是 Ruby/HAML 问题。

于 2012-05-11T17:22:01.557 回答