说我有这样一个块:
<% @help_sections.each do |section| %>
<li><%= section.name %></li>
<% end %>
Run Code Online (Sandbox Code Playgroud)
但是在返回的最后一条记录中,我想做其他事情,例如在li那里应用一个类:
<li class="last"><%= section.name %></li>
我怎么用最干的方式做到这一点?
谢谢.
EDIT1:
我想我会简单地使用一个if语句和lastruby方法,但不知道如何在块中做到这一点?我知道,如果我只想要该数组中的最后一个元素,我可以这样做@help_sections.last,但这在Ruby块的范围内没有意义.
最干的方法是使用CSS代替.而不是例如:
li.last { color: red; }
Run Code Online (Sandbox Code Playgroud)
..然后用额外的CSS类弄乱你的标记,只需使用:last-child伪选择器,即:
li:last-child { color: red; }
Run Code Online (Sandbox Code Playgroud)
那么您不必在视图中更改任何内容.包括IE9在内的所有现代浏览器都支持此功能.