JSON:APIのincludedを上手に参照する方法がわかりません
JavaScriptで以下のようなデータが let articles
にはいっているとします。
{
"data": [{
"type": "articles",
"id": "1",
"attributes": {
"title": "foo"
},
"relationships": {
"comments": {
"data": [
{ "type": "comments", "id": "5" },
{ "type": "comments", "id": "12" }
]
}
}
}, {
"type": "articles",
"id": "2",
"attributes": {
"title": "bar"
},
"relationships": {
"comments": {
"data": [
{ "type": "comments", "id": "6" },
{ "type": "comments", "id": "14" }
]
}
}
}],
"included": [{
"type": "comments",
"id": "5",
"attributes": {
"body": "First!"
}
}, {
"type": "comments",
"id": "6",
"attributes": {
"body": "Second!"
}
}, {
"type": "comments",
"id": "12",
"attributes": {
"body": "I like XML better"
}
}, {
"type": "comments",
"id": "14",
"attributes": {
"body": "I like XML better???"
}
}]
}
以下のように出力したいのですが、 articles
をループで回しながら comments
を取得する方法がわかりません。
- articles(foo)
- comments(First!)
- comments(I like XML better)
- articles(bar)
- comments(Second!)
- comments(I like XML better???)
どのようにやるのがお作法なのでしょうか。
articles.data[0].comments[0]
のように参照できる構造なら考えやすいのですが、、、
JSON:APIってこういうとき辛いんでしょうか。