我有一个psql表,其中包含一个名为params
的列,其中包含一个哈希值。以下是我的情景:
<小时/> 当我执行以下查询...
game = Game.select('games.params').where(id: 123).first
...打印出来......
p game.params.class # => !ruby/class 'ActiveSupport::HashWithIndifferentAccess
现在我可以正常返回返回哈希中的访问值。
<小时/> 但是当我在我的查询中给列名称添加别名时(这是我的问题)......
game = Game.select('games.params as parameters').where(id: 123).first
...打印出来......
p game.parameters.class # => !ruby/class 'String'
我需要能够在查询中更改列名,然后访问哈希中的值,但是当我尝试p game[:time]
时,它被视为字符串。
我是Ruby和Ruby on Rails的新手,所以这可能很容易理解,但我现在处于死胡同。
答案 0 :(得分:0)
这个查询怎么样:
g = Game.find 123
g.params