📅  最后修改于: 2023-12-03 15:15:43.078000             🧑  作者: Mango
在编写HTML.erb文件时,经常需要根据一些条件来添加类名,例如,如果用户已登录,则添加“logged-in”类,否则添加“logged-out”类。这可以通过简单的Ruby代码实现。
下面是一个示例:
<div class="user <%= current_user ? 'logged-in' : 'logged-out' %>">
<%# some content %>
</div>
在这个示例中,我们使用了Ruby的内联条件表达式,根据current_user
变量的值来确定要添加的类名。如果current_user
存在,则添加“logged-in”类,否则添加“logged-out”类。
该行代码使用了<%= %>
标签,这意味着它将被转换为包含条件表达式结果的HTML。请注意,代码用红色的字体突出显示了这一点。
在其他情况下,可能需要添加多个类名。在这种情况下,可以使用join
方法将它们连接起来:
<div class="<%= ['foo', 'bar', some_condition ? 'baz' : ''].join(' ') %>">
<%# some content %>
</div>
在这个示例中,我们创建了一个由三个不同类组成的数组,并使用条件表达式来添加第三个类名(如果满足某个条件)。最后,我们使用join
方法将所有类名连接起来,并将结果插入HTML。
总之,通过这种方式,您可以轻松地实现 HTML.erb 文件中的有条件类添加,从而使您的HTML代码更加灵活和可自定义。