rails中列表末尾的echo元素

时间:2014-05-19 11:10:45

标签: ruby-on-rails

在rails项目中,我有一个列表,我希望从头到尾回显此列表的所有元素。我使用下面的代码:

views/tests/_form.html.erb

  <% list = Task.all %>
  <% list.each do |element| %>
     <%= element.id %><br/>
  <% end %>

通过这段代码,我可以从列表的开头回显所有elemet,但是我希望从列表末尾开始回显元素。我怎么能这样做?

5 个答案:

答案 0 :(得分:1)

<% list = Task.all.reverse %>
<% list.each do |element| %>
  <%= element.id %><br/>
<% end %>

Array#reverse是你可能正在寻找的。

答案 1 :(得分:1)

您需要使用order

  <% list = Task.order("id DESC") %>
  <% list.each do |element| %>
     <%= element.id %><br/>
  <% end %>

答案 2 :(得分:0)

你的意思是在列表上向后迭代?

  <% list = Task.all %>
  <% list.reverse_each do |element| %>
     <%= element.id %><br/>
  <% end %>

请参阅Array#reverse_each

答案 3 :(得分:0)

在循环列表之前,只需反转列表即可。它应该是这样的,

<% list = Task.all.reverse %>

答案 4 :(得分:0)

尝试使用reverse_each

list.reverse_each