我使用 JSON.stringify(object) 在 html View 中创建一个 JSON 对象,它输出以下 JSON 对象
{
"0X1W6": "{\"type\":\"Hourly\",\"hr\":\"12\",\"min\":\"30\",\"every_hr\":\"5\"}",
"Tk18f": "{\"type\":\"Daily\",\"hr\":\"12\",\"min\":\"30\",\"days_checked\":[1,4]}"
}
如何将其转换为 ruby 对象,如下所示:
[
{ :type => 'Hourly', :hr => 12, :min => 30, :every_hr => 5}
{ :type => 'Daily', :hr => 12, :min => 30, :days_checked => [1,4]}
]
最佳答案
result = []
z = ActiveSupport::JSON.decode( '{
"0X1W6": "{\"type\":\"Hourly\",\"hr\":\"12\",\"min\":\"30\",\"every_hr\":\"5\"}",
"Tk18f": "{\"type\":\"Daily\",\"hr\":\"12\",\"min\":\"30\",\"days_checked\":[1,4]}"
}')
z.each_value do|i|
x = {}
ActiveSupport::JSON.decode(i).each{|k,v|
x[k.to_sym] = (v.class == String && v.to_i.to_s == v) ? v.to_i : v
}
result << x
end
关于javascript - JSON 对象到 Rails 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5778567/