Проблемы с добавлением атрибута изображения в категорию - Magento 2


Я добавил атрибут в свою категорию, следуя этому руководству (https://belvg.com/blog/how-to-add-image-attribute-to-a-category-in-magento-2.html).

Похоже, я на правильном пути, но когда я пытаюсь загрузить изображение, я получаю ошибку 404 в своей консоли chrome:

POST http://mywebsite.com/admin/VendorName_CategoryImage/category_thumb/upload/key/48f549e227d66a94210827868a615957af8239355508cfad904f1da8444baaef/?isAjax=true 404 (Forbidden)

Я думаю, что проблемы в моем app/code/VendorName/CategoryImage/view/adminhtml/ui_component/category_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="content">
        <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="label" xsi:type="string" translate="true">Content</item>
                <item name="collapsible" xsi:type="boolean">true</item>
                <item name="sortOrder" xsi:type="number">90</item>
            </item>
        </argument>
        <field name="image_thumb">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="dataType" xsi:type="string">string</item>
                    <item name="source" xsi:type="string">category</item>
                    <item name="label" xsi:type="string" translate="true">Mobile Image</item>
                    <item name="visible" xsi:type="boolean">true</item>
                    <item name="formElement" xsi:type="string">fileUploader</item>
                    <item name="elementTmpl" xsi:type="string">ui/form/element/uploader/uploader</item>
                    <item name="previewTmpl" xsi:type="string">Magento_Catalog/image-preview</item>
                    <item name="required" xsi:type="boolean">false</item>
                    <item name="sortOrder" xsi:type="number">40</item>
                    <item name="uploaderConfig" xsi:type="array">
                        <item name="url" xsi:type="url" path="VendorName_CategoryImage/category_thumb/upload"/>
                    </item>
                </item>
            </argument>
        </field>
    </fieldset>
</form>

Спасибо за любую помощь!

Author: Kyrylo Romantsov, 2017-09-11

1 answers

Я думаю, вам следует добавить имя вашего маршрутизатора в файл app/code/VendorName/CategoryImage/view/adminhtml/ui_component/category_form.xml:,

 <item name="uploaderConfig" xsi:type="array">
                        <item name="url" xsi:type="url" path="VendorName_CategoryImage/category_thumb/upload"/>
                    </item>

Замените VendorName_CategoryImage своим именем маршрутизатора расширения, вы можете найти route.xml файл из

app/code/VendorName/CategoryImage/etc/adminhtml/routes.xml

Если у вас нет файла routes.xml в вашем модуле, просто создайте его с уникальным именем маршрута.

routes.xml файл выглядит так

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
    <router id="admin">
        <route id="YOUR_ID" frontName="YOUR_ROUTE_NAME">
            <module name="VendorName_CategoryImage" before="Magento_Backend" />
        </route>
    </router>
</config>

Заменить YOUR_ROUTE_NAME,YOUR_ID

 3
Author: Keyur Shah, 2017-09-12 07:28:57