Обновление Magento 2.2.0, тип ошибки не допускается

9

Мне удалось обновить магазин Magento с 2.1.6 до 2.2.0. Бэкэнд работает очень хорошо, но я сталкиваюсь с исключением во фронт-офисе.

Сообщение об исключении гласит: Элемент «блок», атрибут «тип»: атрибут «тип» не допускается.

Вся ситуация описана в следующем посте от GitHub: https://github.com/magento/magento2/issues/11839

Я новичок в Magento. Не могли бы вы дать мне ссылку, которая описывает, откуда я должен удалить недопустимый атрибут типа или другие атрибуты, или где я могу его реорганизовать?

Рандхир Ядав
источник
Похоже, вы испортили массив настроек. Поделитесь полным исключением, желательно с частью кода здесь.
Рикардо Мартинс
Это часть кода: 1 исключение (я): Исключение # 0 (Magento \ Framework \ Config \ Dom \ ValidationException): элемент «блок», атрибут «тип»: атрибут «тип» недопустим. Строка: 684 Элемент «блок», атрибут «тип»: атрибут «тип» не допускается. Строка: 692 Один и тот же код повторяется на нескольких строках (699, 732, 737, 748, 753). После этого я получаю несколько строк с помощью: Magento \ Framework \ Config \ Dom -> _ initDom /vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(111): Magento \ Framework \ Config \ Dom -> __ construct

Ответы:

5

Эти строки наиболее вероятны в XML-файле макета:

Element 'block', attribute 'type': The attribute 'type' is not allowed.
Line: 776

Element 'block', attribute 'type': The attribute 'type' is not allowed.
Line: 783

Element 'block', attribute 'type': The attribute 'type' is not allowed.
Line: 816

Скорее всего, в макете XML у вас есть такие объявления, как

<block type="..."

Который не соответствует lib / internal / Magento / Framework / View / Layout / etc / elements.xsd и должен быть заменен на

<block class="..."
Orlangur
источник
Ты был прав. Там было о макете XML. Но, как и ожидалось, я столкнулся со следующей ошибкой в ​​пользовательском модуле: Неустранимая ошибка: ошибка Uncaught: невозможно создать экземпляр интерфейса TemplateMonster \ FilmSlider \ Api \ SliderRepositoryInterface Я думаю, что мне следует добавить новый блок кода предпочтения в di.xml.
Обычно предпочтения должны добавляться модулями, которые вводят новые интерфейсы. Пожалуйста, пометьте мой ответ соответствующим образом, если первоначальный вопрос решен предложенным подходом, чтобы он мог помочь другим. Если проблему со SliderRepositoryInterface будет трудно решить, опубликуйте ее как еще один вопрос.
Орлангур
Я решил эту проблему также. Спасибо за вашу поддержку!
@Iulian, что ты исправил? Встречаемся с той же ошибкой с Templatemonster / FilmSlider ..
Rann