【问题标题】:Ext.Store Send multiple data at onceExt.Store 一次发送多个数据
【发布时间】:2013-03-14 02:36:33
【问题描述】:

我在一个事务中创建一个一对多的表单。我真的需要完全创建记录,或者根本不创建。如果其中一个数据不符合要求,我已经使用 java 实现了一个回滚代码来回滚所有操作。接口使用 extjs,我与 Jackson 有 REST 接口。

问题是,ExtJS 4 以特定形式将所有内容连同所有详细记录一起发送到 URL 的最佳方式是什么?尽管我做了任何事情,Ext.Store 似乎都一一发送数据。

嗯,简而言之,我需要 Ext.Store 将这样的内容作为原始内容与应用程序/json 内容一起发布:

{ ID: '', 派对:3, 机器:'x1', 产品:'pr001', 运行时间:12, 材料: [{ 项目:'rm001', 数量:'39.01', 对齐:'9.930' }, { 项目:'rm002', 数量:'20.03', 对齐:'9.0234' }] }

问题是,子存储总是在输入数据时发送数据,当我将 autoSync 设置为 false 时,它​​仍然会一个一个地发送它们,而不是一次通过父存储发送所有数据。

有示例代码吗?

谢谢

【问题讨论】:

    标签: java javascript rest jackson extjs4.1


    【解决方案1】:

    我这样做的方式是通过 xml,但想法应该是相同的 我的父商店包含一个序列化函数 它看起来像这样

    serialize: function(){
         var store = this;
         var xml = [];
         store.each(function(record){
            xml.push('id:'+record.get(id))
            xml.push('party:'+record.get(party))
            record.materials().each(function(materials_rec){
               xml.push('item:'+materials_rec.get(item));
                ...                 
            });
         });
         return xml.join('');
    }
    

    所以我从控制器调用这个函数并提交一个 ajax 请求,其中将包含父商店和子商店的所有记录

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-20
      • 2018-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-09
      • 2015-11-01
      相关资源
      最近更新 更多