【问题标题】:Creating a custom array with jBuilder使用 jBuilder 创建自定义数组
【发布时间】:2013-07-12 20:28:46
【问题描述】:
我正在尝试使用 jBuilder 构建一个自定义数组,这是我的 javascript 函数所需的结构。在这种情况下,它们只是数组中的 1 个对象。我知道array! 方法,但这需要使用集合。如何强制 jbuilder 围绕对象包装数组?我正在寻找的结构如下所示:
object = {
customArray : [{ someKey : 'somevalue' }]
}
【问题讨论】:
标签:
ruby-on-rails
ruby
jbuilder
【解决方案1】:
不确定这是否是您所要求的,但您可以这样做:
x = { :someKey => 'somevalue' }
Jbuilder.encode do |json|
json.customArray Array.wrap(x)
end
Array#wrap 由ActiveSupport 提供,并将一个项目包装在一个数组中(除非它是一个数组)。它也不会像其他方法那样破坏您的Hash(例如,Array(x)、x.to_a、[*x])。