使用jBuilder创建自定义数组

时间:2013-07-12 20:28:47

标签: ruby-on-rails ruby jbuilder

我正在尝试使用jBuilder构建一个自定义数组,这是我的javascript函数所需的结构。在这种情况下,它们只是数组中的一个对象。我知道array!方法,但这需要使用集合。如何强制jbuilder在对象周围包装数组?我正在寻找的结构如下所示:

object = {
  customArray : [{ someKey : 'somevalue' }]
}

1 个答案:

答案 0 :(得分:2)

不确定这是否是您要求的,但您可以这样做:

x = { :someKey => 'somevalue' }
Jbuilder.encode do |json|
  json.customArray Array.wrap(x)
end

Array#wrapActiveSupport提供,它将一个项目包装在一个数组中(除非它是一个数组)。它也不会像其他方法那样打破Hash(例如Array(x)x.to_a[*x])。