【问题标题】:Server side query rerun for paging, sort or filtering服务器端查询重新运行以进行分页、排序或过滤
【发布时间】:2014-12-16 10:40:18
【问题描述】:

当特定连接的客户端上的某些数据发生更改时,为该客户端重新运行服务器查询/订阅的最佳方法是什么?

这对于服务器端过滤、排序或分页非常有用。

例如,客户端有一个包含数千行分页的表,当用户更改过滤文本或页码时,服务器将使用该过滤器重新计算查询订阅,并即时更新客户端。

搜索输入不必在服务器的所有连接用户之间同步,因此它不需要存在于数据库中。

有什么方法可以在客户端和服务器上使用传统模型方法执行此操作,还是我必须实现常见问题解答中提到的类似 RPC 的方法?

谢谢!

【问题讨论】:

标签: derbyjs racerjs


【解决方案1】:
var filter = model.root.filter('items', 'temp.pageNumber', function(item, x,y,pageNumber){
   if (item.index > pageNumber*10 && item.index < pageNumber*10+10){
      return true;
   }
   return false;
}
model.root.subscribe(filter,function(){
   model.ref('filteredItems', filter);
});

并绑定到视图中的过滤项目。 像这样的。

【讨论】:

  • 你好安德烈。但这不涉及将所有结果加载到内存中然后对它们进行分页吗?我正在寻找更多关于数据库查询方法的信息。想象一下,您有数十万条记录。
猜你喜欢
  • 2013-07-21
  • 1970-01-01
  • 1970-01-01
  • 2023-03-18
  • 1970-01-01
  • 2013-06-28
  • 2019-04-30
  • 2011-07-02
  • 1970-01-01
相关资源
最近更新 更多