При переходе к Drupal 8/9 на twig шаблоны, часто возникает вопрос, как проверить что поле пустое.
Наиболее точный ответ на мой взгляд помогает найти фильтр render, т.к. он позволяет получить результат рендера соответствующего поля, а не заниматься исследованием структуры данных.
|
|
{% if content.field_my_field|render %} <div class="wrapper"> {{ content.field_my_field }} </div> {% endif %} |
В некоторых ситуациях, возможно, потребуется более сложная комбинация фильтров вроде такой:
|
|
{% if content.field_my_field|render|striptags|trim is not empty %} <div class="wrapper"> {{ content.field_my_field }} </div> {% endif %} |
Drupal 8/9 twig
Данная запись опубликована в 28.01.2022 19:07 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 28, 2021 г.
Сниппет кода, демонстрирующий как alias создаётся в Drupal 9.
Ранее (в 8й версии) это был сервис ядра path.alias_storage, и код выглядел так:
[crayon-6a9ec057090f2100424887/]
В 9й версии хранилище перенесли в entityTypeManager и потому выглядит ...
Читать
Январь 22, 2022 г.
Для семерки можете посмотреть другую статью.
Обычно правят поведение существующих форм через hook_form_alter, добавляя туда еще один обработчик submit. Специальный метод setRedirectUrl объекта FormStateInterface позволяет настроить адрес перенаправления. ...
Читать
Май 22, 2021 г.
Подгрузка данных с сервера (например, при изменении параметров фильтра) происходит с небольшой задержкой, потому пользователь может не понять, среагировал как то сайт или нет на его действия.
Задача состоит в том, чтобы показать, что идет загрузка ...
Читать
Август 7, 2021 г.
Если файл загружен через поле, созданное в конструкторе полей какого либо entity Drupal, то соответствующий модуль, предоставляющий функционал загрузки файла, сам обеспечит установку необходимого статуса. Что если поле было создано программно, и требуется ...
Читать