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

Twig Сравните параметр, переданный в шаблон внутри шаблона

В Twig я успешно визуализирую шаблон и передаю ему следующий массив со значениями:

    $params = array(
                    'value1'    => 'y',
                    'value2'    => 'x'
                );

Внутри шаблона, который я отображаю, я хочу иметь оператор if, в котором можно сравнить значение «value1» со строковой переменной.

Что-то типа

    {% set type =  {{ value1 }}  %}
    {%  if type == y %}
       {* do code *}
    {%  elseif type == b %}
       {* do code *}

Как я могу присвоить значение {{ value1 }} типу, так как этот пример не работает.

02.08.2016

Ответы:


1

Попробуйте: {% set type = value1 %}

Но почему бы просто не:

{% if value1 == y  %}

{% elseif value2 == x %}

{% endif %}

?

02.08.2016

2

Наверное это:

{% set type = params['value1']   %}

Или проще:

{% set type = params.value1   %}

Дополнительная информация здесь в документе

Затем вы можете использовать в операторах if, как обычно:

{%  if type == 'x' %}
      do something for the X case 
{%  elseif type == 'y' %}
      do somethingelse for the Y case
{% endif %}

Вот рабочий пример.

Надеюсь, это поможет

02.08.2016
  • Если OP передает массив, например: $twig->render('template.html, $parms');, то это неверно, так как это будет просто {% set type = value1 %} 02.08.2016
  • {% set type = params['value1'] %} и {% set type = params.value1 %} не работают, получается, что на value1 можно ссылаться только по имени. Так что {% set type = value1 %} работает нормально. В итоге я использовал только {% if value1 == y %} {% elseif value2 == x %} {% endif %} 02.08.2016
  • Новые материалы

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

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

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

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

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

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

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