Php Magento 2:是否将网格列添加到管理销售订单,而不将列添加到数据库?

Php Magento 2:是否将网格列添加到管理销售订单,而不将列添加到数据库?,php,magento2,Php,Magento2,我想在magento管理仪表板上的销售订单网格中添加一列。但该列的值来自某个进程,而不是数据库。可能吗?怎么做呢?提前感谢。您可以通过向自定义模块添加名为view/adminhtml/ui\u component/sales\u order\u grid.xml的文件来向管理网格添加一列,该文件包含以下内容: <?xml version="1.0" encoding="UTF-8"?> <listing xmlns:xsi="http://www.w3.org/2001/XML

我想在magento管理仪表板上的销售订单网格中添加一列。但该列的值来自某个进程,而不是数据库。可能吗?怎么做呢?提前感谢。

您可以通过向自定义模块添加名为
view/adminhtml/ui\u component/sales\u order\u 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">
    <listingToolbar name="listing_top"/>
    <columns name="sales_order_columns">
        <column name="order_reference" class="Vendor\Example\Ui\Component\Listing\Column\Example">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="dataType" xsi:type="string">text</item>
                    <item name="visible" xsi:type="boolean">true</item>
                    <item name="label" xsi:type="string" translate="true">Example Column</item>
                </item>
            </argument>
        </column>
    </columns>
</listing>

请注意,如果您想添加排序和筛选选项,您需要添加一些其他调整,但这取决于您希望在列中显示的数据类型。

我知道这是一篇老文章,但您知道添加排序和筛选选项的好来源/教程吗?使用此工具,我可以获得此文本“某物”在everty顺序的网格中,但我想得到动态值,而不是那个。。。。那我该怎么办呢?
/**
 * @param array $dataSource
 * @return array
 */
public function prepareDataSource(array $dataSource)
{
    if (isset($dataSource['data']['items'])) {
        foreach ($dataSource['data']['items'] as & $item) {
            $item[$this->getData('name')] = 'Something'
        }
    }

    return $dataSource;
}