是否可以远程过滤小于和大于?我知道如何在 php 和 mysql 中处理这个问题,但我不知道如何在 extjs 4 商店中设置这样的过滤器。
问问题
1145 次
2 回答
1
开箱即用 4.1,没有。
您将需要为此原因覆盖负责的提供者代理,目前只有属性-值对被提交(负责函数)。另一点是Ext.util.Filter根本不支持远程排序的任何比较器。所以你必须自己实现并确保商店不支持本地过滤(因为那不起作用)。
作为一种解决方法,您可以将较小/较大的值连同作为编码字符串的值一起提交,然后在服务器端减去它。这只会导致本地过滤器没有结果。
于 2012-08-31T14:50:18.687 回答
0
我通常会覆盖 Ext.data.proxy.Server,如下所示:
// ext store remote filter missing operator fix
Ext.override(Ext.data.proxy.Server, {encodeFilters: function(filters) {
var min = [],
length = filters.length,
i = 0;
for (; i < length; i++) {
if(filters[i].property && filters[i].value){
min[i] = {
operator: filters[i].operator,
property: filters[i].property,
value : filters[i].value
};
}
}
return this.applyEncoding(min);
}});
于 2015-09-09T12:00:00.597 回答