개체가 "거주지"이고 거주지에 많은 세부 정보가 있습니다. 데이터가 서버에서 반환되면 serializer "extractSingle"을 사용하여 관계를 매핑하는 방법은 무엇입니까? 다음과 같은 오류가 발생합니다 "정의되지 않은 또는 null 참조"toString '속성을 가져올 수 없습니다. " 누군가 내가 여기서 잘못하고있는 것을 말해 줄 수 있습니까? 여기ember 데이터 추출기 단일 시리얼 화기
App.Residence = DS.Model.extend({
residence_ID: attr('number'),
house_Number: attr('string'),
street: attr('string'),
city_ID: attr('number'),
state_ID: attr('number'),
zip: attr('string'),
apt: attr('string'),
client_ID: attr('number'),
client: null,
lead: null,
projectDetails: DS.hasMany('projectDetail')
});
App.ResidenceSerializer = DS.WebAPISerializer.extend({
primaryKey: 'residence_ID',
extractSingle: function (store, primaryType, payload) {
var primaryTypeName = primaryType.typeKey;
var typeName = primaryTypeName,
type = store.modelFor(typeName);
var data = {};
data[typeName] = payload;
data.projectDetails = [];
var normalizedArray = payload.projectDetails.map(function (nav) {
data.projectDetails.push(nav);
}, this);
payload.projectDetails = payload.projectDetails.mapProperty('projectDetailID');
payload = data;
return this._super.apply(this, arguments);
},
normalizeHash: {
projectDetails: function (hash) {
hash.residence_ID = hash.id;
hash.id = hash.projectDetailID;
return hash;
},
residence: function (hash) {
hash.residence_ID = hash.id;
return hash;
}
}
});
와는 JSON이 마지막에 떨어져 모든 작업을 던지고 슈퍼 구현을 반환 서버
에서{
"residence_ID":3532,
"house_Number":"243",
"street":"Main St.",
"city_ID":2,
"state_ID":33,
"zip":"11111",
"apt":"35",
"client_ID":3598,
"projectDetails":[{"projectDetailID":4947,"residence_ID":3532"}, {"projectDetailID":4947,"residence_ID":3532}]
}
당신이 당신의 JSON 내려 오는 방법을 보여 수를 설정할 때
? – Kingpin2karguments
의 참조가 업데이트되지 않습니다 보조 노트로방금 json을 게시했습니다. 왜 코드 섹션에 넣을 수 없는지 모르겠다. –