私は2つのレールモデルを持っています:
マイルストーンには多くのタスクがあります タスクはマイルストーンに属します
私のコントローラーでは、次のように呼び出します。
@milestones = Milestone.all
render :json => @milestones.to_json(:include => :tasks)
それは私に与えます:
[ {
"id": 5,
"name": "This is milestone #1",
"tasks": [{
"complete": false,
"id": 60,
"name": "aaaaa",
"milestone_id": 5,
}, {
"complete": false,
"id": 62,
"name": "ccccc",
"milestone_id": 5,
}
]
}, {
"id": 6,
"name": "This is milestone #2",
"tasks": [{
"complete": false,
"id": 65,
"name": "ffffff",
"milestone_id": 5,
}, {
"complete": false,
"id": 66,
"name": "gggggg",
"milestone_id": 5,
}
]
}
]
しかし、JSON を簡単にナビゲートできるようにする必要があるため、次のようにフォーマットできるようにしたいと考えています (各「サブ配列」には「milestone_ID」または「task_ID」というラベルが付いていることに注意してください)。
[
"milestone_5": {
"id": 5,
"name": "This is milestone #1",
"tasks": [
"task_60":{
"complete": false,
"id": 60,
"name": "aaaaa",
"milestone_id": 5,
},
"task_62":{
"complete": false,
"id": 62,
"name": "ccccc",
"milestone_id": 5,
}
]
},
"milestone_6":{
"id": 6,
"name": "This is milestone #2",
"tasks": [
"task_65":{
"complete": false,
"id": 65,
"name": "ffffff",
"milestone_id": 5,
},
"task_66":{
"complete": false,
"id": 66,
"name": "gggggg",
"milestone_id": 5,
}
]
}
]
Railsをカスタム形式のJSONにする方法を知っている人はいますか? 「milestone_」の部分をなくして ID を吐き出さなければならない場合でも、それは非常に役立ちます。
ありがとう!