使用AjaxStore的多重排序/排序网格

时间:2013-05-27 10:50:40

标签: oracle sorting extjs extjs4.2

我需要在从Ajax商店填充的网格中实现多重排序,但是我对列的简单排序也存在问题。

这是我的商店:

dsUser = Ext.create('Ext.data.Store', {
        model: 'user',
        pageSize: defPagSize,
        totalProperty: 'totalCount',
        autoLoad: {start: 0, limit: defPagSize},
        remoteSort: true,
        proxy: {
            type: 'ajax',
            enablePaging:true,
            url: '<c:url value="/queryForList.action?query=User.getUsers"/>',
            reader: {
                         type: 'json',
                         root: 'list',
                         totalProperty:'totalCount'
            }
        }
}); 

任何类型的帮助都很有用。 感谢。

编辑: 现在我在我的应用程序中重写了旧的排序逻辑。这一刻我发现任何人都可以帮我发布和修改网格以发布一个数组(属性:'',方向:'')并保留图标要选择的网格。 (对不起我的英文)

1 个答案:

答案 0 :(得分:1)

代理只是通过sortParam和值在JS中可用的结构中发送...例如,JSON编码的对象数组([{“property”:“email”,“direction”:“DESC” “}])。

当您收到服务器端的请求时,您绝对需要对排序顺序对象进行顶级解析,并将其转换为您的数据库可以理解的字符串。使用数据库中查询字符串中的原始值将不起作用,也不打算像那样工作。

当我这样做时,它通常是这样的:

  • 接收请求
  • 在查询字符串
  • 中搜索排序顺序参数
  • 使用服务器端应用程序的语言将JSON字符串解码为对象
  • 迭代分拣机阵列并构建“排序”字符串
  • 将已解析的排序字符串发送到数据库查询