ExtJS 데이터 모델

2690 단어 ExtJs
Model
1. 먼저 사용자의 데이터 모델을 정의한다
Ext.define('User', {extend:'Ext.data. Model', fields: [//정의 필드 {name:'name', type:'string'}, {name:'age', type:'int'}, {name:'phone', type:'string'}, {name:'alive', type:'boolean', defaultValue:true}],
changeName: function () {//정의된 방법 var oldName =this.get ('name'),//현재 실례의name 필드의 값을 가져옵니다. newName =oldName +'The Barbarian';
this.set('name', newName);//name 필드의 값 설정});
2. 사용자 객체 실례화
var u = Ext.ModelManager.create({//실례화된 객체
name:'gao',//필드와 그에 대응하는 값age: 12, phone:'222-22'},'User'),//어떤 종류의 대상alert(u.get('name')인지 설명합니다.var newname = u.changeName(); 호출 방법으로name 필드를 수정하여 newnamealert (u.get ('name') 에 값을 부여합니다.
데이터 인증:
1. user 모델 만들기
Ext.define('User', { extend: 'Ext.data.Model', fields: [ { name: 'name', type: 'string' }, { name: 'age', type: 'int' }, { name: 'phone', type: 'string' }, { name: 'gender', type: 'string' }, { name: 'username', type: 'string' }, { name: 'alive', type: 'boolean', defaultValue: true } ],
validations: [//정의 검증 {type:'presence','field:'age'}, {type:'length','field:'name','min: 2}, {type:'inclusion','field:'gender','list:['Male','Female']], {type:'exclusion','username','list:['Admin','Operator'], {type:'format','field:'username', matcher:/([a-z]+)[0-9]{2,3}/}}});
2. 실례화된 객체
var instance = Ext.ModelManager.create({ name: 'Ed', gender: 'man', username: 'edspencer' }, 'User');
3. 오류 정보를 얻고 반복적으로 보여주기;
var errors = instance.validate();//validate 방법을 호출하여 되돌려줍니다Ext.data.Errors 대상.var message = []; errors.each(function (v) {
message.push(v.field + ':' + v.message);
}); alert(message.join(''));
에이전트:
1. User 모델 생성하기
Ext.define('User', { extend: 'Ext.data.Model', fields: ['id', 'name', 'email'],
proxy: {//정의 프록시 type:'rest', url:'Handler.ashx'}});
     //get a reference to the User model class

var User = Ext.ModelManager.getModel('User'); User.load(123, {//에이전트를 통해 데이터 읽기success: function (user) {alert (user.getid();});

좋은 웹페이지 즐겨찾기