当前位置: 技术文章>> 如何在Magento 2的目录价格规则表单中添加自定义字段?

文章标题:如何在Magento 2的目录价格规则表单中添加自定义字段?
  • 文章分类: Magento
  • 22894 阅读
系统学习magento二次开发,推荐小册:《Magento中文全栈二次开发 》

本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。


在Magento 2的目录价格规则表单中添加自定义字段的步骤:

步骤 1:在目录规则表中添加自定义字段db_schema.xml。导航到以下路径

app/code/Vendor/Extension/etc/db_schema.xml

现在,添加以下代码

<?xml version="1.0"?>
<schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Setup/Declaration/Schema/etc/schema.xsd">
    <table name="catalogrule">
        <column xsi:type="varchar" name="custom_field" nullable="false" length="255"      comment="Custom Field Catalog Price Rule" />
   </table>
</schema>

第 2 步: 在ui_component中创建catalog_rule_form.xml文件。转到以下路径

app/code/Vendor/Extension/view/adminhtml/ui_component/catalog_rule_form.xml

然后,按如下方式添加代码

<?xml version="1.0" encoding="UTF-8"?>
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
<fieldset name="rule_information" sortOrder="10">
    <field name="custom_field" formElement="input">
        <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="source" xsi:type="string">sales_rule</item>
            </item>
        </argument>
        <settings>
            <validation>
                <rule name="required-entry" xsi:type="boolean">false</rule>
            </validation>
            <dataType>text</dataType>
            <label translate="true">Custom Field</label>
            <visible>true</visible>
            <dataScope>custom_field</dataScope>
        </settings>
    </field>
</fieldset>
</form>

结论:

因此,通过这种方式,您可以将任何自定义字段添加到Magento 2中的目录价格规则窗体中。


推荐文章