ExtJS如何格式化Save方法的输入数据

时间:2015-06-22 08:25:38

标签: extjs

如何在ExtJS

中调用save命令之前格式化输入数据

以下是群组模型。对于添加新组,用户可以选择输入dn或dn_query。

如果用户想拥有dn,则REST API需要具有 以下数据格式:

** {
  "id": "f4287ae0",
  "dn": "dc=example,dc=com",
  "label" : 'lable1'
  }

但是如果用户想要输入dn_query,则REST API需要具有以下数据格式:

 ** {
      "id": "f4287ae0",
       "dn_query": {
            "domain": "dc=example",
            "query": "account=account1"
        }
      "label" : 'label'
  }

如何更改模型以便它可以处理机器人数据格式>

// This is model
Ext.define('Console.model.Group', {
  extend: 'Ext.data.Model',
  fields: [{
    name: 'id',
    type: 'string'
  }, {
    name : 'label',
    type : 'string',
  } , {
    name: 'dn', 
    type: 'string'
  }, {
    name: 'dn-query', 
    type: 'string', 
  }],
   proxy: {
      simpleSortMode: true,
     type: 'rest',
       url: '/api/group',
      reader:  {
          type: 'json',
          root: 'data',
          totalProperty: 'total'
      }
   }

});

var app = Console.model.Group.create(values);
var f = this;
app.save({
.....
})

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

platformStatic字段定义中删除string。这将阻止在向服务器发送值之前转换为字符串,这意味着您可以执行以下操作:

dn_query

同时将Ext.create('Console.model.Group', { dn_query: { "domain": "dc=example", "query": "account=account1" }, label: 'label2' }); 添加到convert: nulldn字段。这将阻止发送尚未明确设置的值。

完整示例:documentation