Magento 2自定义列排序不起作用



我在UI 网格中创建了自定义列Sales -> Order。我添加了"利润">列。它与任何数据库表无关,与属性无关。此列仅显示利润的计算。

问题是我无法对列进行排序。列是可排序的,但排序不正确。

我已经检查了许多类似的问题,但没有任何帮助。因为列不在表中,也不是属性。

以下是我的覆盖文件。

sales_order_grid.xml

<?xml version="1.0" encoding="UTF-8"?>
<listing xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
<columns name="sales_order_columns">
<column name="total_paid" class="CompanyModuleUiComponentListingColumnPurchasedPrice">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string" translate="true">Profit</item>
<item name="sortOrder" xsi:type="number">13</item>
</item>
</argument>
</column>
</columns>
</listing>

也许这已经是一个老问题,但对于像我这样面临这个问题的人来说可能会有所帮助。

根据这个Magento 2 GitHub问题,有一个ui_bookmark表,其中存储了一些有关UiComponents(在我的情况下是UI Grid组件(的设置。

截断此表并清除缓存解决了UI Grid中列sortOrder的问题。

最新更新