1
私は、それぞれhas_manyというタグを持つ商品のコレクションを持っています。私はすべてのタグ名の配列を持つように、すべてのタグの名前を組み合わせたいと思います。Jbuilderを使用してすべてのレコードの1つの属性を配列に結合します
所望の出力:
{
"title": "Product1",
"tags": ["name1", "name2", "name3"]
}
私の現在のJBuilderは私を与えている:
{Products: [{
"title": "Product1",
"tags":[
{"tag1":
{"name": "name1"}
},
{"tag2":
{"name": "name2"}
},
{"tag3":
{"name": "name3"}
}
]
}]}
私の現在のJBuilder。
json.array! @products do |product|
json.title product.title
json.tags product.tags do |tag|
json.name tag.name
end
end
ありがとうございました!
あなたはjson.tagsは 'do'ブロックせずにproduct.tags''試したことがありますか? – SteveTurczyn
まだネストされたタグオブジェクトを取得します。基本的には、json.tagsと同じになるようにタグ名だけの配列が必要です。 – juruz
OK、おそらく 'json.tags product.tags.map(&:name)'を試してください。 – SteveTurczyn