zoukankan      html  css  js  c++  java
  • model工厂类(转)

    /**
    * model工厂类
    */
    Ext.define("factory.ModelFactory",{
            statics:{
                    //数据类模型的集合
                    models:new Ext.util.MixedCollection(),
                    //字段集合
                    fields:new Ext.util.MixedCollection(),               
                    getModelByName:function(modelName,excludes){
                            //不需要的字段
                            var nofields = {};
                            if(excludes){
                                    nofields = {"excludes":excludes};
                            }
                            //1.声明类,返回类的ClassName
                            if(!this.models.containsKey(modelName)){
                                    //ajax拿到我们的字段集合
                                    var fields = [];
                                    if(this.fields.containsKey(modelName)){
                                            fields = this.fields.containsKey(modelName)
                                    }else{
                                            Ext.Ajax.request({
                                                    http://www.cnblogs.com/zmc/admin/'/pc/doAction!getModelFields.action?modelName='+modelName,
                                                    method:'POST',
                                                    params:nofields,
                                                    timeout:4000,
                                                    async:false,//跟关键 我不需要异步操作
                                                    success:function(response,opts){
                                                            fields = eval(response.responseText);
                                                    }
                                            });
                                    }
                                    this.fields.add(modelName,fields);
                                   
                                    var newModel = Ext.define(modelName,{
                                            extend:'Ext.data.Model',
                                            fields:fields
                                    });
                                    this.models.add(modelName,newModel);
                            }
                           
                            return {modelName:modelName,model:this.models.get(modelName)};
                    }
            }
    });
  • 相关阅读:
    hdu4587 Two Nodes 求图中删除两个结点剩余的连通分量的数量
    洛谷3388 tarjan割点
    POJ1523 Tarjan求割点以及删除割点之后强连通分量的数量
    POJ1144 tarjan+网络中割点与割边的数量
    POJ1780 欧拉路+手写栈解决爆战问题
    Delphi 窗体函数GetForegroundWindow
    Delphi 窗体函数GetClassName
    Delphi 窗体函数GetDesktopWindow
    Delphi 窗体函数 GetTopWindow、GetNextWindow
    Delphi 调用惯例 register, pascal, cdecl, stdcall, safecall 介绍
  • 原文地址:https://www.cnblogs.com/zmc/p/2512775.html
Copyright © 2011-2022 走看看