0

次のループで review.avg_answer2、review.avg_answer3 などを出力したいと思います。

  <% @count = 1 %>
  <% 10.times do |x| %>
    <td><%= link_to review.avg_answer1.to_i, "#" %></td>
    <% @count += 1 %>
  <% end %>   

簡単な答えがあることは知っていますが、それは私には当てはまりません。

私は試し"review.avg_answer#{@count}.to_i"ましたが、もちろんうまくいきません。

ありがとう!

4

2 に答える 2

1

Does it work ?

review.send("avg_answer#{@count}").to_i
于 2012-06-17T08:46:18.760 に答える
0

これはあなたのケースでうまくいくはずです..
10.times.each {|x| review.send("avg_answer#{x}")} OR10.x.each {|x| review.send(:"avg_answer#{x}")}`

メソッドに Params を渡すことを想定している場合は、次の方法で変更できます。 10.times.each {|x| review.send("avg_answer#{x}",params1,params2)} または10.times.each {|x| review.send(:"avg_answer#{x}",params1,params2)}

于 2012-06-17T10:28:39.540 に答える