Magento 2: Пользовательская проверка для system.xml


Можно ли создать пользовательскую проверку для полей в конфигурации? ( Хранилища > Настройки> конфигурация)

Я создал файл system.xml, но значений по умолчанию для тега validate недостаточно для моих нужд, и я хотел бы создать свои собственные правила.

Я нашел другой вопрос об этом, но в нем не говорится, как и где я должен поместить/объявить метод проверки.

Возможно ли это или это единственное решение для создания серверная модель с функцией сохранения перед сохранением?

Author: Community, 2017-02-01

1 answers

Насколько я знаю, если мы хотим добавить больше пользовательских проверок. Мы должны проверить с помощью beforeSave(). Например, взгляните на проверку файлов cookie: vendor/magento/module-cookie/Model/Config/Backend/Lifetime.php.

Мы можем добавить дополнительную проверку Js для ввода пользовательского интерфейса.

Пример добавления проверки Js для системного xml:

В своем модуле создайте файл макета - adminhtml_system_config_edit.xml

enter image description here

app/code/Vendor/Module/view/adminhtml/layout/adminhtml_system_config_edit.xml

<?xml version="1.0"?>

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceContainer name="js">
            <block class="Magento\Backend\Block\Template" 
                   template="Module_Vendor::system/config/custom_js.phtml"/>
        </referenceContainer>
    </body>
</page>

Не забудьте добавить свою пользовательскую проверку в шаблон.

 2
Author: Khoa TruongDinh, 2017-02-01 16:32:26