2014-12-29 6 views
1

나는 두 가지 모델이사이드 로딩은

{"animals":[{"id":1,"name":"Wiskey","user_id":3} 

와 엠버는 GET 전화 사용자/3.

나는 내가 가지고있는 것은이 JSON 모든 사용자 찾으려고

:

{"users":[{"id":3,"firstName":"Bob","lastName":"Marley","animal_ids":[4,8,14]} 

을하지만 GET 동물 4, 8, 14 문제는 무엇인가에 대한했다 호출? 내가 사용하는 어댑터는 ActiveModelAdapter입니다.

감사합니다.

답변

1

그것에 대해 아주 좋은 railscast도 있습니다

레일은 레일에서 하나의 호출 사용자와 동물을 반환해야하는 방법에 대한 활성 모델 시리얼 보석 (here)를 살펴 보자 here

0

당신은 시도해야 Ember Data가 추가 레코드를 요청하려면 animals 관계에 액세스하십시오. 템플릿에 표시되지 않거나 다른 곳에서 액세스되는 경우 서버에 요청할 필요가 없습니다.

요청을하지 않을 수있는 또 다른 이유는 서버에 대한 다른 호출로 Ember Data가 해당 레코드를 저장소로로드하는 결과를 가져온 경우입니다. 이미 해당 레코드를 유지 한 경우 명시 적으로 요청하지 않는 한 다시로드하려고 시도하지 않습니다.

+0

좋은 설명. 그녀의 제목에서, 그녀는 동물들이 자동적으로 "사이드로드 된"것을 얻을 것이라고 기대했던 것처럼 들린다. – Kalman

+0

네, 자동으로 데이터를 가져와야합니다. 나는 레일 문제가 아니라 엠버 문제라고 생각한다. 왜냐하면 사용자가 관련 동물에 대한 정보를 얻지 못하게하기 때문이다. 어쩌면 약간의 설정을 놓칠 수 있습니다. 이 방식으로 ActiveModelSerializer로 데이터를 직렬화하려고합니다. DS.ActiveModelSerializer.extend (DS.EmbeddedRecordsMixin, {attrs : {animals : {serialize : 'ids'}}}); 하지만 아무것도 아니야. – Francesca

관련 문제