2010-05-01 45 views
0

这一个创建错误:在ruby中,你如何使这个嵌套哈希工作?

@settings = { 
    :tab1 => { 
     :name => { 
     :required => true 
     }, 
     :description 
    } 
    } 

需要改变:descrpition到:描述=> {},但是我没有任何值:描述所以我希望它保持原样(不空=> {})

你能告诉我处理这种情况的最佳方法吗?

在此先感谢

+0

这是一个很难问的问题。 – 2016-04-08 22:25:55

回答

6

您可以指定为零。

@settings = { 
    :tab1 => { 
     :name => { 
     :required => true 
     }, 
     :description => nil 
    } 
    } 
2

Ruby的哈希之前1.9不下令,甚至事后这是一个有点笨拙,因为据我所知,你不能重新排列物品等,所以,如果你也想保留元素的顺序,你可能考虑使用数组而不是散列:

@settings = { 
    :tab1 => [ 
    { 
     :field => :name, 
     :required => true 
    }, 
    { 
     :field => :description 
    } 
    ] 
}