Настройка Twig выберите опцию в раскрывающемся списке

в настоящее время я пишу php mvc с нуля и использую twig в качестве движка шаблона и нуждаюсь в некоторой помощи, устанавливая выбранную опцию в раскрывающемся списке. В настоящее время в моей модели у меня есть sql-запрос, который вытаскивает весь список супервизоров и помещает их в мой раскрывающийся список с помощью цикла twig for, но мне нужно, как выбрать супервизор пользователя, если он соответствует.

Я извиняюсь сейчас, так как я новичок в twig

посмотреть:

<select class="form-control" id="supervisor">
      {% for supervisor in supervisor %}
      <option value="{{supervisor.fname}} {{supervisor.lname}}" >{{supervisor.fname}} {{supervisor.lname}}</option>
      {% endfor %}
</select>

попытался:

<select class="form-control" id="supervisor">
      {% for supervisor in supervisor %}
{% if {{supervisor.fname}} {{supervisor.lname}} == {{ user.supervisor }} %}
            <option value=”{{supervisor.fname}} {{supervisor.lname}}” selected>{{supervisor.fname}} {{supervisor.lname}}</option>
{% else %}
    <option value=”{{supervisor.fname}} {{supervisor.lname}}”>{{supervisor.fname}} {{supervisor.lname}}</option>
{% endif %}
      {% endfor %}
</select>

1 ответов


может быть, вы можете попробовать что-то вроде этого:
Заменить supervisor имя переменной oneSupervisor в цикле и тест oneSupervisor С user.supervisor.

<select class="form-control" id="supervisor">
    {% for oneSupervisor in supervisor %}
        {% set selected = '' %}
        {% if (oneSupervisor.fname ~ ' ' ~ oneSupervisor.lname) == user.supervisor %}
           {% set selected = 'selected' %}
        {% endif %}
        <option value="{{oneSupervisor.fname}} {{oneSupervisor.lname}}" {{ selected }}>{{oneSupervisor.fname}} {{oneSupervisor.lname}}</option>
    {% endfor %}
</select>