Реализация блока с внедрением формы

См. основной материал для введения.

В имплементации блока требуется сформировать набор переменных и передать его в шаблон.

Шаблон был ранее объявлен в основном файле модуля, исходя из макета.

В макете присутствуют две надписи (title и subtitle), а также форма. Форму я создал на базе Drupal\Core\Form\FormBase.

/src/Plugin/Block/SearchGoodsBlock.php

Для общей картины приведу и код шаблона.

Здесь вы увидите подключение библиотеки, которую я объявлял ранее в модуле.

/templates/search-form-for-goods.html.twig

Код JS библиотеки.

/libs/product-search-autocomplete.js

Мало букафф? Читайте есчо !

Загрузить данные параграфов для связанного с ними entity

Июль 8, 2023 г.

Пример кода для загрузки параграфов. В данном примере будем загружать параграфы, связанные с entity commerce_product_variation (это сущность модуля Commerce). Я привязал информацию по остаткам складов к вариациям в виде параграфов (тип - stocks). ...

Читать

Чем заменить file_create_url в Drupal 9/10

Январь 9, 2024 г.

Функция file_create_url устаревает, начиная с версии 9.3, а в 10й версии она уже отсутствует. Документация предлагает воспользоваться реализацией интерфейса \Drupal\Core\File\FileUrlGeneratorInterface, чтобы заместить устаревающую функцию в вашем ...

Читать

Убираем пустые категории из фильтра во views

Сентябрь 13, 2023 г.

Весьма распространённый случай, когда в качестве exposed filter используется поле, связанное с таксономией. Так вы получаете набор опций в фильтре для своего представления, которое доступно пользователю. Также весьма часто некоторые дополнительные ...

Читать

Сохранение файла, полученного через форму в Drupal

Февраль 17, 2024 г.

Вы создали форму с полем типа file, и хотите сохранять файл как сущность друпала при отправке данных формы. [crayon-6a3e9e60b364d782995536/] Обычно объявления форм в Drupal 8+ размещаются в виде расширений класса FormBase в каталоге модуля /scr/Form/*. ...

Читать
 

Комментарии к «Реализация блока с внедрением формы»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: