我目前正在从头开始编写一个php mvc并使用twig作为我的模板引擎,需要一些帮助在下拉列表中设置所选选项。目前在我的模型中,我有一个sql查询,它使用twig for循环拉出所有主管列表并将它们放入我的下拉列表中,但我需要一些如何匹配用户的主管。
我现在道歉,因为我不熟悉树枝
查看:
<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>
答案 0 :(得分:8)
可能你可以尝试这样的事情:
将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>