Rails如何循环以获得一个项目

时间:2017-06-15 05:42:35

标签: ruby-on-rails ruby ruby-on-rails-3

如何循环以获得表中的一个项目?

如果您使用

<% @blocks.first(4).each do |b| %>

将获得表格的前4个

但要获得第5项?

我尝试过使用find <% @blocks.find(5).each do |b| %>

但继续获得表格中的第一个

所以,有人知道吗?

内部块

<% @blocks.first(1).each do |b| %>

  <li >

    <%= link_to  content_tag(:span, b.category),  block_path(:id => b.id), :class => "drop" %>
<% end %>

1 个答案:

答案 0 :(得分:0)

您不需要循环来获取一个项目。你可以直接拿到它:

 <% b = @blocks[4] # fifth element %>

但是,无论出于什么原因,你想要循环,你可以使用drop / take。

<% @blocks.drop(4).take(1).each do |b| %>

注意:这假定为Array接口。如果您的@blocks是其他内容,则可能会提供不同的解决方案。