У меня есть этот хэш Ruby, который я использую для получения предельных сумм:
AMOUNT_LIMITS_FOR_TRX_TYPE = {
zimpler: {
eur: { min: 3_50, max: 15_00_00 },
sek: { min: 35_00, max: 15_000_00 }
},
qiwi: {
eur: { min: 5_00, max: 350_00 },
usd: { min: 5_00, max: 500_00 },
rub: { min: 500_00, max: 15_000_00 },
kzt: { min: 500_00, max: 74_300_00 }
},
payu: {
czk: { min: 1, max: 1_000_000_00 },
pln: { min: 1, max: 1_000_000_00 }
}
}.freeze
def amount_for(transaction_type, currency)
p transaction_type
p currency
min_amount = AMOUNT_LIMITS_FOR_TRX_TYPE[transaction_type.to_sym][currency.to_sym][:min]
max_amount = AMOUNT_LIMITS_FOR_TRX_TYPE[transaction_type.to_sym][currency.to_sym][:max]
rand(min_amount..max_amount)
end
Я называю метод amount_for с параметрами: :zimpler
и "SEK"
и получаю ошибку:
checks.rb:31:in `execute': undefined method `[]' for nil:NilClass (RuntimeError)
/models/request_builders/request_builder.rb:246:in `amount_for'
Знаете ли вы, где моя ошибка и как ее исправить?