yml 中未知数量的节点 - 如何解析?
Unknown amount of the nodes in yml - how to parse?
在一个应用程序中我有这个:
def get_debt_for_month(api_requests_count)
case api_requests_count
when 0..50
5
when 50..100
9
when 100..200
13
# and so on
end
end
显然,硬编码并不是一个好主意。我该怎么做?我认为最好的方法是将价格移动到 yml 文件中,但是为什么我要动态解析它,因为案例的数量是未知的并且可能会有所不同?
如果范围内没有间隙,就使用起始值...
# data.yml
0: 5
51: 9
101: 13
然后你的方法...
def get_debt_for_month(api_request_count)
thresholds = YAML.load_file('data.yml')
thresholds.sort.select{|e| e[0] <= api_request_count}.last[1]
end
在一个应用程序中我有这个:
def get_debt_for_month(api_requests_count)
case api_requests_count
when 0..50
5
when 50..100
9
when 100..200
13
# and so on
end
end
显然,硬编码并不是一个好主意。我该怎么做?我认为最好的方法是将价格移动到 yml 文件中,但是为什么我要动态解析它,因为案例的数量是未知的并且可能会有所不同?
如果范围内没有间隙,就使用起始值...
# data.yml
0: 5
51: 9
101: 13
然后你的方法...
def get_debt_for_month(api_request_count)
thresholds = YAML.load_file('data.yml')
thresholds.sort.select{|e| e[0] <= api_request_count}.last[1]
end