Nano Hash - криптовалюты, майнинг, программирование

Как отформатировать адрес в TWIG?

У меня есть сайт Drupal, и я хочу отформатировать адрес в TWIG.

Как удалить пробелы до и после адреса?

Как заменить теги "<br>" на " - "?

Вот код TWIG:

<strong>Adresse postale :</strong> {{ store.address }}

Вот рендеринг:

<pre class="text-left"><strong>Raison sociale :</strong> Poupette &amp; Cacahuète.
<strong>Adresse postale :</strong> 
            <div class="field field--name-address field--type-address field--label-hidden field--item"><p class="address" translate="no"><span class="address-line1">rue du vermont</span><br>
<span class="postal-code">14600</span> <span class="locality">Honfleur</span><br>
<span class="country">France</span></p></div>

<strong>Téléphone :</strong> .
<strong>Adresse électronique :</strong> [email protected]
<strong>Boutique :</strong> https://www.s1biose.com/fr/boutique/poupette-cacahuete
Immatriculé au  de  sous le numéro .
</pre>

введите здесь описание изображения


Ответы:


1

Вы можете использовать replace и trim работает следующим образом:

{{ store.address|trim|replace({'<br>': '-'})|raw  }}
14.01.2020
  • Вывод replace не помечен как безопасный, поэтому вам также нужно применить фильтр raw 14.01.2020
  • @DarkBee, ваши комментарии лучше моего ответа, поэтому создайте свой ответ, а я удалю свой и проголосую за ваш :) 14.01.2020
  • @ doydoy44 Мои комментарии неверны. В первом разметка рендерится обычным текстом, во втором рендеринга нет. Вот что я хочу сделать: rue du vermont - 14600 Honfleur - France 14.01.2020
  • @doydoy44 Хочу сделать адрес одной строкой, без разметки + заменив <br> на " - " + удалив пробелы до и после. 14.01.2020
  • @Mathieu, вы тестируете функцию обода для удаления пробелов? 14.01.2020
  • @ doydoy44 какой должен быть код? Я на Drupal с Drupal Commerce в шаблоне магазинов 14.01.2020
  • @ Матье, извините за опечатку. Я бы сказал, если вы протестируете {{ store.address|trim }} для удаления пробелов? 14.01.2020
  • @doydoy44 doydoy44 Если я использую {{ store.address }}, рендеринг будет таким же, как в моем вопросе. Если я вставлю дополнительный код, он ничего не отобразит. 14.01.2020
  • Хорошо, это работает с этим кодом {{ store.address|render|trim|replace({'<br>': ' - '})|raw }}, но мне нужно удалить все теги, чтобы поместить их в одну строку (как необработанный текст, но с -). 14.01.2020
  • {{ store.address|render|trim|replace({'<br>': ' - '})|striptags|raw }} Нашел, но проблема все равно есть, адрес нужно поставить в одну строку ibb.co/zfC5Rn8 14.01.2020
  • Почему он делает поле на 3 строки? 14.01.2020
  • Я думаю, у вас есть 3 строки в вашей базе данных. вы можете использовать функцию ветки nl2br, чтобы проверить это, и попробовать что-то вроде |replace({'<br><br>': ' - '}) или |replace({'<br> <br>': ' - '}), чтобы решить ее после nl2br 15.01.2020
  • @ doydoy44 Спасибо, но это не работает. У меня может быть решение здесь stackoverflow.com/questions/59741391/ 15.01.2020

  • 2

    Если вы хотите получить полный контроль над визуализацией этого, вы можете получить доступ к отдельным адресам «кусков», используя store.address.my_value. Так, например, ваш адрес, как вы описали его в комментарии, будет выглядеть так:

    <span class="my-class">
    {{ store.address.address_line1 }} - {{ store.address.postal_code }} {{ store.address.locality }} - {{ store.address.country }}
    </span>
    

    Если вы всегда хотите, чтобы это отображалось именно так, рассмотрите возможность добавления переопределения темы для шаблона address-plain.html.twig, чтобы это отображалось так, как вам хотелось бы. Вы можете начать с копирования шаблона модуля из docroot/modules/contrib/address/templates/address-plain.html.twig и изменить его в своей теме по своему усмотрению.

    16.03.2021
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..