我正在使用rails API,我想以特定方式呈现JSON文件。 我有一个名为Store的模型,在这个模型中,我有像State和City这样的记录。我的问题是我希望渲染JSON看起来像这样:
{
"Arizona": [
"Phoenix",
"Tucson"
],
"California": [
"Anaheim",
"Los Angeles",
"San Diego",
"San Francisco"
],
"Colorado": [
"Denver"
],
}
我可能在模型中有许多名为Colorado或名称为California的记录,但每个加州记录都有自己的城市名称,例如:
这是我的模特
| state | city |
-----------------------
|California| Anaheim |
|Colorado | Denver |
|California| San Diego|
依旧......
所以我想配对属于唯一状态的每个城市,所以我的JSON只会显示一次州名。
有什么建议吗?
答案 0 :(得分:2)
试试这个:
MemoryError
这将返回:
{“California”=> [ModelObject2,ModelObject2],“Colarado”=> [ModelObject1]}
现在我们需要用城市名称替换第二个对象部分,以便遍历第二部分并从该对象获取城市,然后Model.select(:state, :city).group{|add| address.state}
转换为json对象。
to_json
希望这会对你有所帮助!!