【发布时间】:2010-01-24 10:19:05
【问题描述】:
我有 散列 (@post) 的散列,我想保持散列键在数组 (@post_csv_order) 中的顺序,并且还想保留 关系键 =>数组中的值。
我不知道数组中@post 哈希和 key => value 元素的最终数量。
我不知道如何在循环中为数组中的所有元素分配哈希。一个接一个@post_csv_order[0][0] => @post_csv_order[0][1] 工作得很好。
# require 'rubygems'
require 'pp'
@post = {}
forum_id = 123 #only sample values.... to make this sample script work
post_title = "Test post"
@post_csv_order = [
["ForumID" , forum_id],
["Post title", post_title]
]
if @post[forum_id] == nil
@post[forum_id] = {
@post_csv_order[0][0] => @post_csv_order[0][1],
@post_csv_order[1][0] => @post_csv_order[1][1]
#@post_csv_order.map {|element| element[0] => element[1]}
#@post_csv_order.each_index {|index| @post_csv_order[index][0] => @post_csv_order[index][1] }
}
end
pp @post
所需的哈希分配应该是这样的
{123=>{"Post title"=>"Test post", "ForumID"=>123}}
【问题讨论】:
-
请编辑您的问题以正确格式化...
-
谢谢,提交后经常出现格式不正确的情况。我必须仔细检查。