ネットの海の片隅で

技術ネタの放流、あるいは不法投棄。

不揃いなHashから長方形の配列をつくるgem「Emmental」

f:id:s_osa:20140801161150j:plain

ソースはここに置いてあります。

s-osa/emmental · GitHub

インストールはgem i emmentalとかbundle installとかのいつものやつで。

使い方

基本

emmental = Emmental.new

emmental << {foo: 1, bar: 2}
emmental << {fizz: 3, "buzz" => 5}
emmental << {foo: 1}

emmental.to_a # =>
# [
#   [:foo, :bar, :fizz, "buzz"],
#   [1, 2, nil, nil],
#   [nil, nil, 3, 5],
#   [1, nil, nil, nil]
# ]

デフォルトヘッダを指定する

emmental = Emmental.new(["a", "b", "c"])

ヘッダなしの配列を返す

emmental.to_a(headers: false)

現実的な使い方

このemmentalで配列を吐き出して、その配列をCSVに喰わせるとかの流れが使いやすいと思います*1

*1:というかそのために作りました。