【发布时间】:2026-01-19 16:30:01
【问题描述】:
目前 Magento 在处理批量操作的方式上存在问题。无论分页如何,它都会返回一些 JS,其中包含当前集合和过滤器的每个 db id。这是为了支持网格标题中的“全选”与“全选可见”选项。当您的记录数量较少时,这不是一个问题,但如果您有 850k 条记录(在这种情况下为订单),它就会成为一个严重的问题。
我的问题是,有没有人可以优雅地解决这个问题?
我可以想到几种解决方案,每种都有自己的缺点,但我希望有人以一种简单的方式解决了这个问题,可以作为附加模块使用。付费或开源解决方案都是受欢迎的建议。
澄清:
我正在使用 Magento 中的网格小部件寻找一个优雅/直接的解决方案来解决 850k+ 记录的问题。普通的 Magento 代码做出了明智的决定,即返回与当前过滤器匹配的每条记录的 id,即使它们没有被显示。这不是关于离线处理记录,而是关于使用网格小部件进行日常管理任务。
一种可能的解决方案是将过滤后的搜索结果存储在临时表中并返回对搜索结果的引用。然后,您可以将其从使用“全选”上的实际 ID 更改为使用引用的操作的特定回调。这将保留当前行为。
所以,再问一次,有没有人对这个已经创建的问题有好的解决方案?
【问题讨论】:
-
如果你最终不得不自己动手,巧妙地使用本地存储将是解决这个问题的好方法。
-
我认为@fbmc 没有抓住重点。您不是在寻找一种方法来摆脱这些额外的 JS 块,而不是处理来自 Web 界面的所有 850k 记录吗?无论哪种情况,我都建议您修改您的问题,因为它还不清楚。
标签: magento