如何在Haml中编写if条件?
如何在Haml中为Ruby on Rails应用程序编写if和if语句? 
HAML是基于缩进的,分析器可能会很棘手。你不需要在Haml中使用“ – end”。 使用缩进来代替。在Haml中,只要在Ruby评估命令之后增加了缩进,就会开始一个块。 当缩进减less时结束。如果其他块如下所示。
 - if condition = something - else = something_else 
一个实际的例子
 - if current_user = link_to 'Logout', logout_path - else = link_to 'Login', login_path 
编辑:如果你只是想使用条件然后
  - if current_user = link_to 'Logout', logout_path 
在haml中,两个运算符用于ruby代码。
-   =用于评估并插入到文档中的ruby代码。
例:
 = form_for @user 
-   -用于评估的Ruby代码,而不是插入到文档中。
例:
 - if @user.signed_in? = "Hi" - else = "Please sign in!" 
 在haml中,使用- (破折号)来表示一行是Ruby代码。 此外,缩进级别表示块级别。 结合两个if / else语句。 
 - if signed_in? %li= link_to "Sign out", sign_out_path - else %li= link_to "Sign in", sign_in_path 
与ERB中的以下代码相同:
 <% if signed_in? %> <li><%= link_to "Sign out", sign_out_path %></li> <% else %> <li><%= link_to "Sign in", sign_in_path %></li> <% end %> 
如果你想把条件放在你的标签里面
 %section{:class => "#{'new-class' if controller.action_name == 'index'}"} 
这里有两个链接:
第一个是转换器,你可以inputhtml或erb片段,你会得到haml!