在代码中:

<% @offers.each do |offer|%>
  <%= offer.percentageOff%> <b>% OFF on order of</b>
  <%= image_tag('1407951522',:size=>'10x10',:alt=>'Rs.')%>
  <%= offer.amountforDiscount%>
  <%= button_to 'Delete',{:action=>'destroy',:id=>offer.id},class: "" %>
<% end %>

我是 Rails 的新手。我想在编号列表中显示所有报价,我无法使用数据库表,因为 id 不符合顺序。例如:
  • 2000 卢比的订单可享受 30% 的折扣
  • 1000 卢比的订单可享受 13% 的折扣

  • 我如何实现这一目标?

    最佳答案

    如果你不想使用 each_with_index 最简单的方法,那么你可以定义变量 @count=0 并显示,当循环发生时它会增加 1

    <% @count = 0 %>
    <% @offers.each do |offer|%>
    <%= @count += 1 %> #I guess you want this to show Sr.No
    ...... # your code
    <% end %>
    

    each_with_index 方式:
    <% @offers.each_with_index do |offer, index|%>
     <%= index + 1 %> # index starts from 0, so added 1 to start numbering from 1
      ...... # your code
    <% end %>
    

    关于ruby-on-rails - 每个循环中的自动增量值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25910890/

    10-12 01:16