我如何能拿到查询后的所有数据?

一般查询以后,拿到CollectionContainer的数据只是一页的,如果我查询出来的数据有20页,我怎么能拿到这20页的数据? DC.getItems()只是能拿到本页数据,我有什么办法能循环取出这20页的数据?

写个service加载所有数据,在 controller里面注入调用,或者直接加载所有实体
image

这里没有带上filter里面查询条件呢,是要自己拼装查询条件吗?、,,我是想这样,我是想导出查询结果,比如我根据条件查询出来的数据有10页,,自己写一个导出功能,我想直接获取这10页的数据导出。

有两个方案:

  1. 使用Jmix的表格导出组件
  2. 从 data loader 获取当前页面的语句:
@Autowired
private CollectionLoader<Product> productsDl;
@Autowired
private DataManager dataManager;

@Subscribe("export")
public void onExportClick(final Button.ClickEvent event) {
    var proucts = dataManager.load(Product.class)
            .query(productsDl.getQuery())
            .condition(productsDl.getCondition())
            .list();
}
1 个赞

非常感谢,要的就是这种效果,已解决