Cra*_*ker 1 ruby json ruby-on-rails jbuilder
给定以下Ruby数据结构:
data = { :a => 1, :b => 2 }
Run Code Online (Sandbox Code Playgroud)
...我想创建以下JSON:
{"result":[
{"letter":"a","number":"1"},
{"letter":"b","number":"2"}
]}
Run Code Online (Sandbox Code Playgroud)
如何使用Rails的JBuilder实现这一目标?
理想情况下,我想直接从Hash转到JBuilder对象,而不是先将Hash转换为数组.
这很简单.
require 'jbuilder'
data = { :a => 1, :b => 2 }
out = Jbuilder.encode do |json|
json.result data do |kv|
json.letter kv[0]
json.number kv[1]
end
end
puts out #=> {"result":[{"letter":"a","number":1},{"letter":"b","number":2}]}
Run Code Online (Sandbox Code Playgroud)