2012-05-09 2 views
0

모델과 저장이 있으며 저장소의 숨겨진 필드에 값을 할당해야합니다.숨겨진 필드에 저장 값을 할당하는 방법

Ext.define('loginUser', { 
      extend: 'Ext.data.Model', 
      fields: [    
       { name: 'id', mapping: 'Provider.id' }, 
       { name: 'name', mapping: 'Provider.name' } 
      ] 
     }); 


loggedUser = Ext.create('Ext.data.Store', { 
      model: 'loginUser', 
      autoLoad: true, 
      proxy: { 
       type: 'ajax', 
       url : url+'/lochweb/loch/users/getLoggedUser', 
       reader: { 
       type: 'json', 
       root: 'Users' 
       }     
      } 

     }); 

나는 다음과 같이 숨겨진 필드에

CProvider = new Ext.create('Ext.ux.form', { 
    items: [{ 
     xtype:'hidden',      
     name:'clearingHouseID',      
     store:loggedUser 
     value:id 
    }] 
}); 

를 저장 값을 지정해야하지만 값은 숨겨진 값으로 할당되지 않습니다. 숨겨진 필드에 값을 저장하도록 지정하는 방법이 있습니까?

감사

답변

1

당신은 폼의 loadRecord 함수를 사용하여 폼에 기록을 바인딩 할 수 있습니다. 이 라인을 따라 뭔가 :

loggedUser.on('load', function (store, records, success) { 
    if (success && records.length === 1) { 
     CProvider.loadRecord(records[0]); 
    }  
}); 

그런 다음 원하는 모델의 필드의 이름이 폼 필드를 변경는 숨겨진 필드에 저장합니다.

CProvider = new Ext.create('Ext.ux.form', { 
    items: [{ 
     xtype:'hidden',      
     name:'name',      
     store:loggedUser 
     value:id 
    }] 
}); 

숨겨진 필드는 양식에로드 할 모델의 한 필드 값만 저장할 수 있습니다.

관련 문제