簡體   English   中英

無法訪問哈希值

[英]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_accessvariant哈希,如下所示-

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM