[英]How to map the string as a json key, value pair in rails
我将["Check", "06/23/2020 @ 07:15 AM"]之类的字符串放入 ruby 方法中。
我希望将字符串转换为 json 并传递给数据库,例如{"Check" => "06/23/2020 @ 07:15 AM"}
您可以使用Hash::[]
(加*
):
Hash[*["Check", "06/23/2020 @ 07:15 AM"]]
# {"Check"=>"06/23/2020 @ 07:15 AM"}
或者to_h
如果您将数组包装在另一个数组中:
[["Check", "06/23/2020 @ 07:15 AM"]].to_h
# {"Check"=>"06/23/2020 @ 07:15 AM"}
如果它是您提到的字符串,那么您可以将其解析为 JSON,然后转换为 hash 将其包装到另一个数组中并在其上调用to_h
:
> array = JSON.parse('["Check", "06/23/2020 @ 07:15 AM"]')
=> ["Check", "06/23/2020 @ 07:15 AM"]
> [array].to_h
=> {"Check"=>"06/23/2020 @ 07:15 AM"}
升级版:
要处理更多项目,请使用each_slice
方法:
> array = JSON.parse('["check", "06/23/2020 @ 07:15 AM", "test", "06/23/2020 @ 07:15 AM"]')
=> ["check", "06/23/2020 @ 07:15 AM", "test", "06/23/2020 @ 07:15 AM"]
> array.each_slice(2).to_h
=> {"check"=>"06/23/2020 @ 07:15 AM", "test"=>"06/23/2020 @ 07:15 AM"}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.