[英]Can't access Hash values
我有以下代码:
price = variant[merchant["variant_code"]]
转换为: variant["PRDCT-A"]
但是我的问题是它返回nil
因为我的variant
哈希看起来像这样: {:"PRDCT-A"=>{:price=>1495.0}}
它具有:
我只通过了"PRDCT-A"
,它应该是:"PRDCT-A"
。
我已经尝试过concat但它不起作用,如何包含冒号以便可以访问哈希值?
如果我没记错的话,你的哈希结构可能像
merchant = {variant_code: 'PRDCT-A'}
variant = {:"PRDCT-A"=>{:price=>1495.0}}
并且您想借助商家哈希访问变量值
你应该试试看
variant.dig(merchant[:variant_code].to_sym)
请尝试使用with_indifferent_access
和variant
哈希,如下所示-
variant = variant.with_indifferent_access
并使用相同的语句再次访问。 即
price = variant[merchant["variant_code"]]
我希望这有帮助。
您可以简单地转换为json并使用它。
variant = variant.as_json
variant['PRDCT-A']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.