是否可以远程过滤小于和大于?我知道如何在php和mysql中处理这个问题,但我不知道如何在extjs 4商店中设置这样的过滤器。
答案 0 :(得分:1)
4.1开箱即用,没有。
您需要为该原因覆盖负责的提供程序代理,目前只提交属性 - 值对(responsible function)。另一点是Ext.util.Filter根本不支持遥控器的任何比较器。所以你必须实现自己的,并确保商店不支持本地过滤(因为这不起作用)。
作为一个workarround,您可以将较小/较大的值与值一起提交为编码字符串,然后在服务器端将其减去。这只会导致本地过滤器无法获得结果。
答案 1 :(得分: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);
}});
&#13;