数据集MODEL 类层次图
 @ MODEL概念:
数据模型对真实世界中对事物在系统中的反应 extjs4.0中的mode相当于 DB中的table 或 JAVA 中的Class @model的创建: -
-
- Ext.define("person",{
-
- extend:"Ext.data.Model",
- fields:[
- {name:'name',type:'auto'},
- {name:'age',type:'int'},
- {name:'email',type:'auto'}
- ]
- });
-
- Ext.regModel("user",{
- fields:[
- {name:'name',type:'auto'},
- {name:'age',type:'int'},
- {name:'email',type:'auto'}
- ]
- });
@model的实例:三种方法 -
- var p = new person({
- name:'uspcat.com',
- age:26,
- email:'yunfengcheng2008@126.com'
- });
-
-
- var p1 = Ext.create("person",{
- name:'uspcat.com',
- age:26,
- email:'yunfengcheng2008@126.com'
- });
-
-
- var p2 = Ext.ModelMgr.create({
- name:'uspcat.com',
- age:26,
- email:'yunfengcheng2008@126.com'
- },'person');
-
-
- alert(person.getName());
@Validations验证 - Ext.data.validations.lengthMessage = "错误的长度";
- Ext.onReady(function(){
-
-
- Ext.apply(Ext.data.validations,{
- age:function(config, value){
- var min = config.min;
- var max = config.max;
- if(min <= value && value<=max){
- return true;
- }else{
- this.ageMessage = this.ageMessage+"他的范围应该是["+min+"~"+max+"]";
- return false;
- }
- },
- ageMessage:'age数据出现的了错误'
- });
-
-
- Ext.define("person",{
- extend:"Ext.data.Model",
- fields:[
- {name:'name',type:'auto'},
- {name:'age',type:'int'},
- {name:'email',type:'auto'}
- ],
- validations:[
- {type:"length",field:"name",min:2,max:6},
- {type:'age',field:"age",min:0,max:150}
- ]
- });
- var p1 = Ext.create("person",{
- name:'uspcat.com',
- age:-26,
- email:'yunfengcheng2008@126.com'
- });
- var errors = p1.validate();
- var errorInfo = [];
- errors.each(function(v){
- errorInfo.push(v.field+" "+v.message);
- });
- alert(errorInfo.join("\n"));
- });
@初识数据代理proxy person.jsp - <%@page language="java" contentType="text/html" pageEncoding="UTF-8"%>
- <%
- System.out.println(request.getParameter("id"));
- response.getWriter().write("{name:'uspcat.com',age:26,email:'yfc@126.com'}");
- %>
代理JS - Ext.onReady(function(){
- Ext.define("person",{
- extend:"Ext.data.Model",
- fields:[
- {name:'name',type:'auto'},
- {name:'age',type:'int'},
- {name:'email',type:'auto'}
- ],
- proxy:{
- type:'ajax',
- url:'person.jsp'
- }
- });
- var p = Ext.ModelManager.getModel("person");
-
- p.load(1, {
- scope: this,
- failure: function(record, operation) {
- },
- success: function(record, operation) {
- alert(record.data.name)
- },
- callback: function(record, operation) {
- }
- });
- })
@Molde的一对多和多对一 - (function(){
- Ext.onReady(function(){
-
- Ext.regModel("teacher",{
- fideld:[
- {name:'teacherId',type:"int"},
- {name:'name',type:"auto"}
- ],
- hasMany:{
- model: 'student',
- name : 'getStudent',
- filterProperty: 'teacher_Id'
- }
- });
-
- Ext.regModel("student",{
- fideld:[
- {name:'studentId',type:"int"},
- {name:'name',type:"auto"},
- {name:"teacher_Id",type:'int'}
- ]
- });
-
- })
- })();
本笔记记于“USPCAT.COM的EXTJS4.0视频教程学习过程”
|