如何循环通过记录集并传递当前记录record1,并且仍然能够在相同的操作中引用下一条记录?
<% menu_item.children.menu.each do |record1| %>
<%= wrap_submenu(record1) %>
<%= wrap_submenu_a(record2) %>
<% end %>
我正在使用祖先宝石
您可以使用each_cons(2):
(1..10).each_cons(2){|a,b| puts a;puts b; puts "----"}
=>
1
2
----
2
3
----
3
4
----
4
5
----
5
6
----
6
7
----
7
8
----
8
9
----
9
10
----
所以在你的例子中:
menu_item.children.menu.each_cons(2) do |record1,record2|
...
不是很干净,但是您可以使用考虑最后元素迭代的each_with_index