2014-06-13 2 views
1

편안한 API를 구축 할 때 Ember의 RESTAdapter 규칙을 필자가 따라했습니다.관련 모델 데이터 가져 오기

모델이 post이고 모델이 tags, 다 대다 관계입니다. 이후 게시물에만 관련된 태그를 찾을 것이므로 역함수를 정의하지 않았습니다.

게시 모델 tags: hasMany('tag')에서이 값을 얻었으며 편안한 API에서 tags: ["1", "2", "3"] 등을 반환하는 것처럼 가정합니다.

이제 posts/1 url에서 어떻게 이러한 태그를 얻을 수 있는지 궁금합니다. 상점을 볼 때 태그가 검색되지 않습니다. 태그 데이터 및 해당 속성에 액세스하려면 어떻게합니까?

App.Tag = DS.Model.extend({ 
    name: attr() 
}); 

App.Post = DS.Model.extend({ 
    active: attr(), 
    name: attr(), 
    organization: attr(), 
    user_id: attr(), 
    submitted_ts: attr(), 
    status: attr(), 
    tags: hasMany('tag') 
}); 

{ 
    "post": { 
    "0": { 
     "id": "1", 
     "active": "A", 
     "name": "This is a test title", 
     "organization": "Stryker", 
     "user_id": "0", 
     "submitted_ts": "1402664380", 
     "status": "finalized" 
    }, 
    "tags": [ 
     "30", 
     "1", 
     "14" 
    ] 
    }, 
    "tags": [ 
    { 
     "id": "30", 
     "type": "asdf", 
     "name": "KNEE", 
     "pivot": { 
     "case_id": "1", 
     "id": "30" 
     } 
    }, 
    { 
     "id": "1", 
     "type": "therapy", 
     "name": "more things", 
     "pivot": { 
     "case_id": "1", 
     "id": "1" 
     } 
    }, 
    { 
     "id": "14", 
     "type": "therapy", 
     "name": "asdfasdf", 
     "pivot": { 
     "case_id": "1", 
     "id": "14" 
     } 
    } 
    ] 
} 

시리얼 라이저는이 같은 태그가있을 때, 당신은 태그 정보가 게시물의 요청에 내려오고있다 말하는이 호출

App.SpecialtySerializer = DS.JSONSerializer.extend({ 
    primaryKey: 'specialty_id' 
}); 


App.ApplicationAdapter = DS.RESTAdapter.extend({ 
    namespace: 'api/v1', 
    headers: function() { 
     return { 
      authToken: this.get('auth.authToken') 
     }; 
    }.property("auth.authToken") 
}); 
+0

을 수행하여 전용 액세스 태그를 필요

tags: hasMany('tag')

비동기로 태그를 표시해야 시도하고있는 것, 태그를 비동기로 가져 오려고하는지 또는 소식과 동시에 태그를 올리려는 것입니까? – Kingpin2k

+0

은 게시물과 동일한 유형으로 내려갑니다. 내 반환 된 json은 '{post : {...}} ..... tags : {...} '와 같은 서식이 끔찍합니다. 그러나 기본적으로 태그는 게시물의 json 요청에 있습니다. – user1952811

+0

위의 게시물과 태그 모두에 대한 모델 정의를 표시하고 json의 예를 올리면 RESTAdapter를 사용하고 있다고 말할 수 있습니까? – Kingpin2k

답변

0

관련이 없습니다. 이것이 사실이 아니라면, 당신은 게시 할 수있는 호출에 포함 된 경우 어쩌면 내가의 혼란 스러워요, 당신은 post.get('tags')

+0

어디에서 전화해야합니까? 'post.get ('tags')'? 그것은 경로에 있어야 하는가? – user1952811

관련 문제