新手问题 [已解决] 如何动态地在 hash 里存 hash

hicupp · 2013年09月09日 · 最后由 hicupp 回复于 2013年09月09日 · 2179 次阅读

如题,在存储数据时遇到这样的问题: 想实现这样的存储方式:

data = { 'info' => [ {'name' => 'xx', id => 'xxxx', ...}, {'name' => 'xx', id => 'xxxx', ...}, {'name' => 'xx', id => 'xxxx', ...} ] } 现在申明了一个

data = {} data['info'] = {} 通过迭代新建若干条数据 a:

a = {'name' => 'xx', id => 'xxx'} 怎么把 a 按上述的方式插入到 data 中,多谢哈~

hash 不适合存这个。

建议把 a 转换为 Json (string) , 有 100 条 a , 就是 100 条 json string .

#1 楼 @sevk 我是想转化为 data 后再转成 json,这样别人拿到数据直接转成 hash 就可以遍历了

info 明显应该是个数组啊,怎么会是 hash

楼主搞错了吧。

'info' => {
                         {'name' => 'xx', id => 'xxxx', ...},
                         {'name' => 'xx', id => 'xxxx', ...},
                         {'name' => 'xx', id => 'xxxx', ...}
                       }

应该是这样?

'info' => [
                         {'name' => 'xx', id => 'xxxx', ...},
                         {'name' => 'xx', id => 'xxxx', ...},
                         {'name' => 'xx', id => 'xxxx', ...}
                       ]

然后这样?

data['info'] << a
5 楼 已删除

#4 楼 @zhaoguobin 呀。。解决了,data['info'] 是数组就行了,多谢哈

需要 登录 后方可回复, 如果你还没有账号请 注册新账号