Конфігурація системи Magento 2 для випуску модуля


11

Я відвідав багато сайтів, щоб знайти вирішення цього питання.

Але після створення system.xmlі acl.xmlMagento дають мені помилку, генеровану у звіті.

Помилка

a: 4: {i: 0; s: 140: "Примітка: Не визначений індекс: id в / usr / local / ampps / www / mgn2 / vendor / magento / module-config / Model / Config / Structure / Element / Iterator. php у рядку 59 "; i: 1; s: 6391:" # 0 /usr/local/ampps/www/mgn2/vendor/magento/module-config/Model/Config/Structure/Element/Iterator.php(59) : Magento \ Framework \ App \ ErrorHandler-> обробник (8, 'Невизначений індекс ...', '/ usr / local / ampp ...', 59, Array)

Чи можете ви прояснити це питання?

app / code / Pulsestorm / HelloWorldMVVM / тощо / adminhtml / system.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
    <system>
        <tab id="Pulsestorm" translate="label" sortOrder="200">
            <label>Pulsestorm</label>
        </tab>
        <section id="config_helloworld" translate="label" type="text" sortOrder="110" showInDefault="1" showInWebsite="1" showInStore="1">
            <label>Pulsestorm</label>
            <tab>HelloWorldMVVM</tab>
            <resource>Pulsestorm_HelloWorldMVVM::config_helloworldmvvm</resource>
            <group id="general" translate="label" type="text" sortOrder="10" showInDefault="1" showInWebsite="0" showInStore="0">
                <label>General</label>
                <field id="enable" translate="label comment" type="select" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
                    <label>Enable Hello World</label>
                    <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                </field>
                <field id="block_label" translate="label" type="text" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="1">
                    <label>Module page title</label>
                </field>
            </group>
        </section>
    </system>
</config>

додаток / код / ​​PulseStorm / HelloWorldMVVM / тощо / acl.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Acl/etc/acl.xsd">
    <acl>
        <resources>
            <resource id="Magento_Backend::admin">
                <resource id="Magento_Backend::stores">
                    <resource id="Magento_Backend::stores_settings">
                        <resource id="Magento_Config::config">
                            <resource id="Pulsestorm_HelloWorldMVVM::config_helloworldmvvm" title="HelloWorldMVVM" />
                        </resource>
                    </resource>
                </resource>
            </resource>
        </resources>
    </acl>
</config>

Відповіді:


22

У вашу system.xmlзаміну це

<tab>HelloWorldMVVM</tab>

з цим

<tab>Pulsestorm</tab>

@Marius: Чи можете ви поділитися трохи контекстом? Я отримую ту саму помилку, але мені спантеличено, що мені ввести у моєму випадку.
хакре

2
ви посилаєтесь на вкладку, яка не існує. Кожен <tab>тег має ідентифікатор, і таким чином ви можете додавати розділи на певних вкладках. Але якщо додати розділ під вкладкою, яка не існує, ви отримаєте помилку вище.
Маріус

@Marius: Так, я теж його знайшов. Дуже дякую. Тепер до наступної таємниці ... :)
хакре

@Marius: Я теж стикався з однотипними проблемами. Виправлено вашою відповіддю велике спасибі;)
Шріхарі

Баки. Я зіткнувся з проблемою, і зараз я отримав рішення
Аміт Бера
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.