HAML:使用公共内容缩进if / else语句

时间:2011-05-27 03:39:43

标签: ruby-on-rails-3 haml

我认为我有以下内容:

- if (condition)
  %div.truecondition
    (Ten lines of content)
- else
  %div.falsecondition
    (Ten lines of the same content)

我想将10行内容分解为if / else语句以下...但如果我这样做,缩进意味着内容不会嵌套在if / else中指定的div内。我确定这是一个常见的问题,我只是想知道解决方案是什么。那么......如何在保持内容嵌套在.truecondition / .falsecondition div中的同时分解出十行呢?

2 个答案:

答案 0 :(得分:12)

您可以尝试Ternary operator

%div{ :class => condition ? 'truecondition' : 'falsecondition' }
  (Ten lines of content)

答案 1 :(得分:2)

JCorcuera的答案更好,但这更脏:

%div(class="#{!!condition}condition")
  (Ten lines of content)

假设您确实拥有名为trueconditionfalsecondition的css类,我输入的内容似乎不太可能。