@Panda_Code
Сognizer

Почему выдает nil?

Добрый день!
Упражняюсь в ООП. Вот, решил получить значение ключа, но мне выдает nil:
# frozen_string_literal: true

require 'json'
require 'net/http'

class Forex
  @@response = Net::HTTP.get_response(URI.parse('https://openexchangerates.org/api/latest.json?app_id=74d160e9151c48fbafa8c5487546886d'))
  @@response_body = @@response.body
  @@result = JSON.parse(@@response_body, :symbolize_names => true)
  
  attr_reader :cash, :face_value 

  def cash=(value)
    @cash = value
  end


  def read
    p @@result[:rates][:@cash]
  end
end

money = Forex.new
money.cash = 'RUB'
money.read

Если поставить вместо [:cash] - RUB, то все работает! Как мне исправить? Могу ли я использовать переменные, чтобы получит результат? Заранее спасибо!
  • Вопрос задан
  • 41 просмотр
Решения вопроса 1
oh_shi
@oh_shi
p @@result[:rates][@cash.to_sym]
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
On The Spot Development Санкт-Петербург
До 4 000 $
KUPIBILET.RU Санкт-Петербург
от 150 000 ₽
от 3 000 до 4 000 $
02 мар. 2021, в 14:48
2000 руб./за проект
02 мар. 2021, в 14:30
40000 руб./за проект
02 мар. 2021, в 14:20
40000 руб./за проект