Ruby on rails 从rails中的resultset对象获取元数据
我正在rails中使用一些自定义查询。 代码片段看起来像Ruby on rails 从rails中的resultset对象获取元数据,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在rails中使用一些自定义查询。 代码片段看起来像 @time_spent = TimeEntry.find(:all, :joins => "INNER JOIN sometable ON x = y", :select =>"id, subject, spent_on") 现在来获取我使用的值 @time_spent[index][:spent_on] @t
@time_spent = TimeEntry.find(:all,
:joins => "INNER JOIN sometable ON x = y",
:select =>"id, subject, spent_on")
现在来获取我使用的值
@time_spent[index][:spent_on]
@time_spent[index][:subject]
我想要的是用索引号代替符号。所以在运行时,我不需要知道select子句中的字段
例如,我想做一些类似的事情
@time_spent[index][1]
@time_spent[index][2]
或
如果我能得到resultset的元数据,我就可以使用这些信息
请发表评论?当@time\u spend是一个对象集合时,这将获得为该集合中第一个[0]项指定的索引的属性值:
@time_spent[0].attributes.values[index]
@time_spent[1].attributes.values[4]
例如,要获取集合中第二个对象的第五个属性值:
@time_spent[0].attributes.values[index]
@time_spent[1].attributes.values[4]
要从结果集中获取字段名,请使用
attributes.keys
method要从结果集中获取字段名,请使用attributes.keys方法