Rails在部分内部提供resource_counter
。
= render @users
# _user.html.slim
= user_counter + 1
= user.name
1马文 2 Starvin
3加文
是否可以反向计数?
3 Garvin
2 Starvin
1马文
答案 0 :(得分:4)
= render @users
# _user.html.slim
= @users.count - user_counter
= user.name
这应该反转显示的数字。
Antek Drzewiecki评论了差异计数/大小:
.count
可能会向DB调用另一个查询.size
只计算数组的大小 总之,您最好使用.size
答案 1 :(得分:1)
可能使用以下内容撤消用户列表:
render @users.reverse
然后在部分中使用:
确定用户的索引为@MrYoshiji @users.size - user_counter
无论如何只是因为有人对我的anwser进行了投票,这是它的工作原理。
a = %w(Marvin Starvin Garvin)
=> ["Marvin", "Starvin", "Garvin"]
a.reverse!
=> ["Garvin", "Starvin", "Marvin"]
user_size = a.size
=> 3
user_counter = 0
=> 0
a.each { |user| puts "#{user_size - user_counter} #{user}"; user_counter = user_counter + 1}
3 Garvin
2 Starvin
1 Marvin
这导致记者描述了所需的清单。如果您只想反转计数器,则不要反转数组;)