Ember Data의 JSONAPIAdapter를 중첩 된 리소스와 함께 사용하려고합니다. 서버 부분에는 django-rest-framework-json-api가 사용됩니다.Ember 데이터 JSONAPIAdapter : 중첩 된 리소스를 가져옵니다.
내 (간체) 엠버 모델 :
Case.js라는
export default Model.extend({
firstName: attr('string'),
lastName: attr('string'),
comments: hasMany('comment'),
})
comment.js
export default Model.extend({
text: attr('string'),
case: belongsTo('case'),
})
/api/v1/cases/4
에 대한 서버의 응답은 다음과 같습니다
{
"data": [
{
"type": "cases",
"id": "4",
"attributes": {
"first-name": "Hans",
"last-name": "Peter",
},
"relationships": {
"comments": {
"meta": {
"count": 1
},
"data": [
{
"type": "comments",
"id": "5"
}
],
"links": {
"related": "http://localhost:8000/api/v1/cases/4/comments"
}
}
}
}
]
}
이제 엠버 데이터와 JSON-API 사양을 올바르게 이해하면 엠버가 의견을 참조 할 때 /api/v1/cases/4/comments
을 요청해야합니다. 대신 /api/v1/comments/5
을 요청하며 이는 분명히 404
을 반환합니다. 요약
내 질문 :
- 서버 응답이 JSON-API 사양을 준수 하는가?
- 중첩 된 경로를 존중하려면 어떻게해야합니까?
저는 ember v2.8을 사용하고 있습니다.
보너스 질문 : 새 덧글 작성과 동일한 문제가 발생합니다. 대신 POST
에서 /case/4/comments
으로 어떻게 처리합니까?
예이 작동하고 JSON이 어떻게 "는 의견을 참조하는"않습니다 올바른 보이는
현재 템플릿에서'model.comments'에 액세스하고 있습니다. 이 문제에 관한 쉼터 공동체의 의견에 따르면 자원에 대한 액세스 방법과 관련된 몇 가지 미묘한 차이가 있습니다. –
모델이 "대소 문자"의 인스턴스라고 가정하면 올바르게 보입니다. 나는 파이어베이스와 루프백을 사용하여 이것을했다. "미묘함"에 대해 확실하지 않습니다. 원한다면 json 샘플 및 코드 샘플을 사용하여 답변을 추가 할 것입니다. –