立即将Extjs商店的所有记录发送到服务器

时间:2013-04-11 16:44:33

标签: extjs extjs4

如何在一次POST调用中将整个商店数据发送到服务器? 它可能是json格式。

感谢。

更新

这是我的商店代码:

Ext.define('App.store.consultorio.Receita', {
    extend: 'Ext.data.Store',
    model: 'App.model.consultorio.Receita',
    autoLoad: false,
    proxy: {

        type: 'rest',
        reader: {
            type: 'json'
        },
        writer: {
            type: 'json'
        },
        url: 'consultas/receita.json'
    }
});

1 个答案:

答案 0 :(得分:5)

您可以将商店中的每条记录设置为脏,然后调用sync()

store.each(function(record){
    record.setDirty();
});

store.sync();

此外,您的商店正在使用RESTful代理,默认情况下不会批量处理操作。见http://docs.sencha.com/ext-js/4-2/#!/api/Ext.data.proxy.Rest-cfg-batchActions

您的商店应该如下:

Ext.define('App.store.consultorio.Receita', {
    extend: 'Ext.data.Store',
    model: 'App.model.consultorio.Receita',
    autoLoad: false,
    proxy: {

        type: 'rest',
        batchActions: true, //<------
        reader: {
            type: 'json'
        },
        writer: {
            type: 'json'
        },
        url: 'consultas/receita.json'
    }
});