를 사용하여 중첩 된 JSON 응답의 값을 얻을 :루비 내가이 같은 JSON 응답을 json으로 보석
@response = {"result":{"amount":0.0}}
이 어떻게 변수에 양의 값을 얻을 수 ?
이 나는 시도했다 : 내가 JSON의 보석을 사용하고
@response['result']['amount']
@response['result'][0]
@response[0][0]
.
를 사용하여 중첩 된 JSON 응답의 값을 얻을 :루비 내가이 같은 JSON 응답을 json으로 보석
@response = {"result":{"amount":0.0}}
이 어떻게 변수에 양의 값을 얻을 수 ?
이 나는 시도했다 : 내가 JSON의 보석을 사용하고
@response['result']['amount']
@response['result'][0]
@response[0][0]
.
@response
목적이
@response[:result][:amount]
키를 시도하다 더 많은 정보를 들어 :symbols
하지 strings
: What's the difference between a string and a symbol in Ruby?
중첩 된 해시 루비의 Hash#dig
방법으로는 경우 nil을 반환하기 때문에 매우 편리합니다 모든 중간 단계는 0입니다.
@response.dig(:result, :amount)
당신이 확실하지 않은 경우는 (기본적으로이 포함됩니다 레일) Hash#with_indifferent_access
를 제공 ActiveSupport::HashWithIndifferentAccess를 사용할 수있는 키 문자열이나 상징이다. 그런 다음 기호 및 문자열 형식의 키를 사용하여 값을 가져올 수 있습니다.
'@response = { "result": { "amount": 0.0}}' –
대괄호 표기법 []을 사용하여 json 응답의 값에 액세스 할 수 있습니다. '@ response.keys'를 호출하여'[]'로 전달할 수있는 모든 키를 확인하십시오. –