ActiveRecord:按正确的顺序获取值:select defined

时间:2011-01-31 21:18:47

标签: ruby-on-rails activerecord

我有一个包含列名的字符串,我想按此顺序打印出键和值。

# controller
fields = "name, year, title"
@blas = Bla.find(23, :select=>fields)

# view
<% @blas.attributes.each do |k,v| %>
  <%=k %>:<%=v %><br>
<% end %>

我得到的结果是“名称,标题,年份”,但我想要“名称,年份,标题”,就像我在字段中定义的那样。 我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

你可以这样循环:

# controller
@fields = "name, year, title"
@blas = Bla.find(23, :select=>@fields)

# view
<% @fields.split(',').map(&:strip).each do |key| %>
  <%= k %>:<%= @blas[k] %><br />
<% end %>