При переходе к 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 1, 2021 г.
Ядро и модули объявляют множество токенов подстановки. Рассмотрим как получить доступ к глобальному объекту типа \Drupal\Core\Utility\Token и выполнить подстановку в строке.
Ядро предоставляет экземпляр объекта через следующий запрос:
[crayon-6a8ec431b0ac5612056518/] ...
Читать
Август 26, 2021 г.
Есть список районов города, доставка в которые имеет фиксированную ставку. Пользователь выбирает район - программа должна подставить цену доставки для ...
Читать
Октябрь 4, 2024 г.
Проблема описана вот тут, и там даже предлагается патч https://www.drupal.org/files/issues/2024-05-28/3134922-40.patch,который частично решает проблему, но в #43 siavash (Sia) более подробно рассказывает о том, как сохраняются данные, и становится ясно, ...
Читать
Август 28, 2021 г.
Сниппет кода, демонстрирующий как alias создаётся в Drupal 9.
Ранее (в 8й версии) это был сервис ядра path.alias_storage, и код выглядел так:
[crayon-6a8ec431b0e8c405743292/]
В 9й версии хранилище перенесли в entityTypeManager и потому выглядит ...
Читать