Ruby使用json gem从嵌套的json响应中获取值

Ruby使用json gem从嵌套的json响应中获取值,json,ruby,Json,Ruby,我有一个json响应,如下所示: @response = {"result":{"amount":0.0}} 如何将amount的值放入变量中 我试过: @response['result']['amount'] @response['result'][0] @response[0][0] 我正在使用json gem。试试这个 @response[:result][:amount] @response对象中的键是:符号不是字符串 更多信息:带嵌套哈希的Ruby方法非常方便,因为如果任何

我有一个json响应,如下所示:

@response = {"result":{"amount":0.0}}
如何将amount的值放入变量中

我试过:

@response['result']['amount']
@response['result'][0] 
@response[0][0] 
我正在使用json gem。

试试这个

@response[:result][:amount]
@response
对象中的键是
:符号
不是
字符串

更多信息:

带嵌套哈希的Ruby方法非常方便,因为如果任何中间步骤为nil,它将返回nil

@response.dig(:result, :amount)

如果您不确定您可以使用的键字符串或符号是否提供了
Hash#和_interference_访问
(Rails默认情况下将包括此项)。然后您可以使用符号和字符串格式的键来获取值。

我得到了这个
@response={“result”:{“amount”:0.0}
的语法错误。您确实可以使用括号符号
[]
来访问json响应中的值。只需通过调用
@response.keys
,检查可以传递到
[]
的所有可用密钥。