ruby - HAML - if/elsif 结构

标签 ruby ruby-on-rails-3 if-statement haml

我的 HAML 代码中需要这种构造:

- if something1
  %div.a
- elsif something2
  %div.b
- elsif something3
  %div.c
- else
  %div.d
    %div another content

我希望我得到类似的东西:

<div class="a|b|c|d">
  <div>another content</div>
</div>

但事实上我得到了

   <div class="a|b|c|d"></div>
   <div>another content</div>

如果需要,我必须如何更新我的代码:

另一个内容

?

最佳答案

我认为您应该创建一个辅助方法:

%div{:class => helper_method(useful_parameters)}

实现此目的的真正难看的方法是使用三元运算符 (condition ? true_case : false_case) 从您选择 haml 并希望拥有您的事实的事实来看,这听起来不像是一个好的解决方案代码库干净。

关于ruby - HAML - if/elsif 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9773670/

相关文章:

ruby-on-rails - 运行 Ruby Rails App 时出现 NoDatabaseError

ruby - 当官方方式不起作用时,如何升级 RVM?

ruby-on-rails - 从 Rails 导出 CSV 数据

sql - 如何使用 IN 查询匹配的电子邮件?

Jquery if else 语句(else 不起作用)

Ruby 数组包含类型?

Ruby 2.1.3 选项散列不能用 fetch 分配

mysql - 我应该担心表中的 1B+ 行吗?

javascript - 在nodejs中未定义为 falsey

mysql - 如果存在则其他