Ruby on rails 如何在Rails中循环使用ActiveRecord值?
我的表中有以下列: 价值1 价值2 价值3 价值4 价值5 我希望能够像这样循环通过它们:Ruby on rails 如何在Rails中循环使用ActiveRecord值?,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我的表中有以下列: 价值1 价值2 价值3 价值4 价值5 我希望能够像这样循环通过它们: <% for i in 1..5 %> <div><%= user."value#{i}"</div> <% end %> 尝试使用send(参见Ruby)。您可以使用send方法将方法名作为字符串发送到任何对象。下面的示例就是您要查找的内容 <% for i in 1..5 %> <div><%= user.
<% for i in 1..5 %>
<div><%= user."value#{i}"</div>
<% end %>
尝试使用send
(参见Ruby)。您可以使用send
方法将方法名作为字符串发送到任何对象。下面的示例就是您要查找的内容
<% for i in 1..5 %>
<div><%= user.send("value#{i}") %></div>
<% end %>
哇,除非您的属性的命名约定真的不好,否则send
方法只能让您走到一半。属性名称是否真的按顺序编号
以下是如何在属性之间循环,而不考虑它们的名称:
<% user.attributes.each do |name, value| %>
<div>
<%= name %>: <%= value %>
</div>
<% end %>
:
我希望这有帮助,如果您有任何问题,请告诉我。谢谢,正是我需要的!鲁比太棒了,没问题。是的,鲁比太棒了!:)问题是它会处理所有属性。他的Rails应用程序完全有可能与一些格式糟糕/命名错误的遗留数据库交互,其中有5个字段名为“contact1”、“contact2”等等。这肯定会循环遍历所有属性,如广告所示。如果您想删除一些,可以使用select方法轻松完成。我只是不想让他觉得他必须这样命名字段才能循环遍历它们。就像Mike说的,数据库中有一些可怕的东西看起来像这样:value1,value2,value3,value4,value5。是的,它们是按顺序编号的。不过这一点很好。