2016-11-08 46 views
0

위젯 열만으로 4.1.2에서 5.1.1로 업그레이드해야했습니다. 나는 일하기 힘든 연관성을 얻는 데 어려움을 겪고있다.Extjs에서 기존 Has Has associations와의 상호 작용 5.1.1

I는 다음과 같습니다 모델이있어 :

Ext.define('PP.model.LM.FOOModel', { 
    extend: 'Ext.data.Model', 

    requires: [ 
     'Ext.data.field.Field' 
    ], 

    fields: [ 
     { 
      name: 'ID' 
     }, 
     //Boatload of simple fields 
    ], 

    hasOne: { 
     model: 'PP.model.LM.FOO1Model', 
     name: 'FOO1', 
     associationKey: 'FOO1' 
    } 
}); 

I 모델과 상호 작용이 더 게터의 \의 setter 메소드 없으며, FOO1Model의 데이터에 액세스 할 수있는 객체로만 존재를 작성자 :

record.get('FOO1'); 

누군가 내가 정확하게 잘못을 지적 할 수 있습니까?

나는 새로운 접근법으로 그것을 시도했다. 원하는 모델에 대한 참조가있는 필드를 만들었다. setFoo1을 호출하고 get을하면 잘 작동합니다. 그러나.

내가 Ajax 요청을하고 Ext.data.reader.Json을 사용하여받은 JSON을 읽으려고하면 객체의 특정 속성이 실제로 연결된 모델이라는 것을 이해하지 못하는 것 같습니다. Foo1의 데이터는 모델에서 Foo1 속성의 객체로 나타납니다. reqest는 FooModel이 많은 모델의 배열을 반환합니다.

은 JSON은 다음과 같습니다

fields: [{ 
    name: 'addressId', 
    reference: 'Address', 
    unique: true 
}] 

확인을 Model API를 더 많은 정보를 원하시면 :

{ 
    "root": [{ 
     "ID": 4241, 
     "Foos": [{ 
      ID: 2237, 
      "Foo1": { 
       "ID": 1216 
      } 
     }] 
    }], 
    "success": true 
} 

답변

0

이 hasOne의 그것이 지금과 같이 이루어진다는 ExtJS 5.1에 존재하지 않는 것 같다.

+0

나는 게시물을 업데이트했습니다. 그것에 대한 어떤 제안? 미리 감사드립니다. –

0

Ext.data.reader.Json을 디버깅하여 이해해야했습니다. 키가 참조 구성에서 associationKey를 전달 중입니다. 지정되지 않은 경우 독자는 JSON의 '_foo1'입력란에 관련 데이터가 있다고 가정합니다.

어디서나 sencha docs에 언급되어 있습니까? 나는 그렇게 생각하지 않는다. 나는 그것을 추측하지 않는 것이 마실 것 같은 느낌이 들까? 미래에 문제가 발생할 수 있습니다 나 같은 불행한 가난한 SODS에 대한

샘플 :

{ 
    name: 'Foo1', 
    reference: {  
     type: 'FOO1Model', 
     association: 'Foo1', 
     associationKey: 'Foo1' 
    }, 
    unique: true 
}