2013-04-28 3 views
7

Ext.data.Model 클래스에는 하나의 모델 필드를 주어진 값으로 설정하는 set(fieldName, newValue) 메서드가 있습니다.한 번에 여러 값을 Ext.data.Model로 설정하는 방법?

한 번에 여러 값을 설정하는 방법은 무엇입니까? 뭔가 같은 : 불가능하지만, 당신은 단지 당신이 그렇게 저장 한 번만 모델의 변경에 대한 통지해야 할 때 모델에 값을 설정이 다른 통화를 병합 할 나의 이해에 따라 만 저장 것이다

Ext.data.Model.set({ 
    field1: 'value1', 
    field2: 345, 
    field3: true 
}); 

답변

7

화재는 다음 beginEditendEdit 기능

var model = new Ext.data.Model(); 

model.beginEdit(); 

model.set('field1', 'value1'); 
model.set('field2', 345); 
model.set('field3', true); 

model.endEdit(); 
+1

을하는 데 도움이됩니다. 문서화되지 않았지만 항상 가능했습니다. 소스 코드를 참조하십시오. http://docs.sencha.com/extjs/4.1.3/source/Model.html#Ext-data-Model-method-set – oldwizard

0

그냥 Ext.create()이 작업을 수행 할 수 없음을 사용할 수 있습니다에 대한이 경우

update 이벤트? 으로 여기 설명 : 당신은 필드를 설정하는 설정, 또는 객체 키/값 쌍을 포함 할 수

http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.ModelManager-method-create

+0

기존 레코드가 수정됩니다. 저장소에 새 모델을 추가하려면 'Ext.Store.add ({field1 :'value1 ', field2 : 345, field3 : true})' –

0

내가 파티에 늦었 어하지만, 여기에 다른 방법이 있습니다.

var rec = new Ext.data.Model({ 
    field1: 'value1', 
    field2: 'value2', 
    field3: 'value3' 
}); 
0

는 그때 빈 기록

에 개체 값을 설정

var new_record = { 
     'field1':'value1', 
     'field2':'value2', 
     'field3':'value3' 
    }; 

필드에 새 값을 설정하는 객체를 생성

//this one is for the grid model 

var blank_record = Ext.create(grid.store.model); 

모든 모델 필드 빈 레코드를 반환하는 새 레코드를 생성 유 그리드에 새로 만든 레코드를 추가 할 또한 경우

blank_record.set(new_record); 

grid.store.add(blank_record); 

희망이 설정() 메소드는 Liverbool 말한대로 여러 매개 변수를 설정 개체를 처리 할 수 ​​있습니다, 이것은 전혀 사실이다

관련 문제