2011-01-31 22 views
1

我有一个带有列名的字符串,我想按此顺序打印出键和值。ActiveRecord:以正确的顺序获取值,如下所示:select defined

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

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

结果我得到的是顺序“的姓名,职务,一年”,但我想“名称,年份,标题”,就像我在领域定义它。 我该怎么做?

回答

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 %>