使用可以更改的数据集进行分页?

问题描述 投票:0回答:1

我确信有关于这个主题的东西,但我只是不知道如何用词来搜索它。

我有一个记录表,它被加载到 UI 中的分页网格中。用户能够更新/修改这些记录。多个用户也可以同时使用系统,获取相同的数据。我在分页网格上有一个过滤器,允许用户仅查看 X 类型的记录。

当用户第一次进入并选择过滤器 X 时,他们会在第 1 页(共 2 页)上看到第 1-25 项。他们分页到第二页,其中的项目应为 26-50。但在分页之前,假设第一页上有 25 条记录其类型已被其他用户更改,现在选择该过滤器时它们不会出现。所以现在我们要分页的项目减少了 25 个,这意味着之前 26-50 的项目现在是项目 1-25,第 2 页现在是第 1 页,并且没有第 2 页...

您可能会看到我遇到的问题,我正在向查询传递一个偏移量以获取下一页结果..但现在偏移量如此之高,它会返回一个空白记录页,使用户和我们的用户感到困惑记录处理。

database gwt pagination client
1个回答
1
投票

这个问题实际上没有一个简单的解决方案。即使 GMail/Google 也不会显示搜索某些内容时找到的邮件/页面的确切数量。

您可以做的第一件事(如果您使用

DataGrid
/
CellTable
)是在调用
exact
时将布尔值
false
设置为
updateRowCount
,并为其提供当前的记录数而不是总数记录数。这将使寻呼机显示“1 - 25 of over 25”而不是“1 - 25 of 50”。

下一种可能性是定期更新行计数(使用 RPC 轮询来检查新的/已删除的记录 - 或使用服务器推送技术,请参阅GWTEventServiceServerPushFAQ)。

您还可以检查您的请求是否返回项目,如果没有,则取消调用/更新行数。

© www.soinside.com 2019 - 2024. All rights reserved.