gpt4 book ai didi

ruby-on-rails - 使用 JBuilder 内联数组元素

转载 作者:行者123 更新时间:2023-12-03 15:10:00 25 4
gpt4 key购买 nike

如何使用 Jbuilder 创建一个包含元素的数组而不先将其设置为变量?

我想在使用 JBuilder 时得到以下结果

{
"something": [
{ "name": "first", "foo": "bar"},
{ "name": "second", "foo": "baz"}
]
}

我发现唯一有效的方法如下。
json.something do
something = [
{ name: 'first', foo: 'bar' },
{ name: 'second', foo: 'baz' }
]
json.array! something do |item|
json.(item, :name, :foo)
end
end

有没有办法让它看起来更像这样?
json.array! 'something' do
json.array do
json.name 'first'
json.foo 'bar'
end
json.array do
json.name 'second'
json.foo 'baz'
end
end

最佳答案

事实证明,jbuilder 内置了对这种用法的支持。您可以使用 child!这种方式的方法:

json.something do
json.child! do
json.name "first"
json.foo "bar"
end
json.child! do
json.name "second"
json.foo "barz"
end
end

#=>
{
"something": [
{ "name": "first", "foo": "bar"},
{ "name": "second", "foo": "baz"}
]
}
好多了,我想。

关于ruby-on-rails - 使用 JBuilder 内联数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24461171/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com