【发布时间】:2014-06-05 11:27:02
【问题描述】:
我应该早点问这个问题,但现在我真的厌倦了回避这个问题:
我有一个普通的数据表,比如
<p:dataTable id="dt1" var="tVar" value="#{mrBean.queriedElements}" filteredValue="#{mrBean.filteredElements}" ...
现在,除了 primefaces 过滤器之外,我还制作了自己的 panelGrid,您可以在其中将过滤器应用到数据库,这些过滤器在任何 PF 操作之前工作。 存在以下列表: queriedElements 包含应用我的个人过滤器后返回的所有数据,以及 primefaces 数据表过滤所需的过滤元素。此外,我不确定是否需要一个代表数据库中所有数据的元素列表。如果没有应用个人过滤器,queriedElements = allElements。
数据表显示了有关所包含对象的大量信息,您可以通过对话框更改这些对象。我想要以下内容:
- 保存后,更新对 selectedElement 所做的所有更改
- 取消后,还原数据表中的所有更改(我不使用已编辑的临时对象,而是列表中的对象)
- 关闭对话框时,记住所有过滤器和分页器位置
这样做的最佳做法是什么?如何避免 queriedElements 和 filtersElements 的冗余代码(以防我必须遍历它以显式更改它,除了数据库合并)?我找到了分页的第一个属性,但我不确定如何结合我的其他要求正确使用它。我的主要问题是,如果我不从数据库中重新获取数据,数据表几乎永远不会显示正确的值。
PF 4.0
【问题讨论】:
标签: java primefaces datatable