在Middleman中从JSON创建Ruby数组
我想从用于本地数据的JSON文件中创建一个Middleman中的数字Ruby数组。目的是使用各种方法来比较和添加值。我很接近,但我不知道如何将循环内容放入数组 我已经阅读了一些相关的问题和文档,但就语法而言,我不确定Middleman在JSON方面的起点和终点 通过下面的示例,我希望生成一个Ruby数组,例如: 最大赌注=[4,8] JSON的一个小示例:在Middleman中从JSON创建Ruby数组,ruby,arrays,json,middleman,Ruby,Arrays,Json,Middleman,我想从用于本地数据的JSON文件中创建一个Middleman中的数字Ruby数组。目的是使用各种方法来比较和添加值。我很接近,但我不知道如何将循环内容放入数组 我已经阅读了一些相关的问题和文档,但就语法而言,我不确定Middleman在JSON方面的起点和终点 通过下面的示例,我希望生成一个Ruby数组,例如: 最大赌注=[4,8] JSON的一个小示例: [ { "id": "001", "wins": 10, "totalSpins": 16, "maxB
[
{
"id": "001",
"wins": 10,
"totalSpins": 16,
"maxBet": 4
},
{
"id": "002",
"wins": 10,
"totalSpins": 21,
"maxBet": 8
}
]
为了手动实现最终结果,我将输出一个循环的结果,然后手动将其粘贴到一个数组中
def maxBet
all = [4,8]
all.max
end
我在模拟我想要创建的内容时的最后一次尝试是打印一个无效数组。似乎我需要使用for循环进行迭代,并将结果推送到数组中,但我不知道如何进行
\[
- data.roulettingale.each do |s|
=s.maxBet
\,
\]
[4,8,]
我将非常感谢您能为我提供帮助,帮助我实现这一目标。或者我不理解您的问题,或者:
s = '[
{
"id": "001",
"wins": 10,
"totalSpins": 16,
"maxBet": 4
},
{
"id": "002",
"wins": 10,
"totalSpins": 21,
"maxBet": 8
}
]'
require 'json'
JSON.parse s
#⇒ [
# {"id"=>"001", "wins"=>10, "totalSpins"=>16, "maxBet"=>4},
# {"id"=>"002", "wins"=>10, "totalSpins"=>21, "maxBet"=>8}
# ]
希望能有帮助
UPD生成包含maxBet
s的数组:
data.roulettingale.map { |item|
item['maxBet']
}
#⇒ => [
# [0] 4,
# [1] 8
# ]
data.roulettingale.map { |item|
item['maxBet']
}.inspect
#⇒ [4, 8]
要选择maxBet的最大值
:
data.roulettingale.map { |item|
item['maxBet']
}.max
#⇒ 8
我真的很感谢你看一眼。我想我不清楚我想做什么,所以我编辑了我的问题。幸运的是,有了Middleman,我可以内置解析功能。我的梦想是得到所有对象的数字的最终结果。比如:m=[4,8]那么,你的
数据.roulettingale
包含这个json,你想打印出maximalmaxBet
,对吗?太棒了,非常感谢!我回来更新是因为我在Twitter上得到了一些帮助,但就是这样!