【发布时间】:2016-12-20 14:23:15
【问题描述】:
为什么当我用 php 编写测试时……
foreach ($rounds as $round){
$assignment = $em->getRepository(‘WorkBundle:Doc’)->findOneBy(array(
‘user’ => $user->getId(),
’whichRound’ => $round,
));
if (!$assignment){
echo “assign ”.$round. “ to user”;
}else{
echo “already assigned to ”.$round. “ to user”;
}
}
return array (
'user' => $user,
'assignment' => $assignment,
'rounds' => $rounds,
);
…它工作正常。赋值为null时输出“assign ”.$round. “ to user”;,不为null时输出“already assigned to ”.$round. “ to user”;。
但是,当我使用上面返回的变量进入我的 twig 模板并执行...
{% for round in rounds %}
{% if assignment is null %}
<h2>{{ user }} successfully added to {{ round }}</h2>
{% else %}
<h2>{{ user }} has already been assigned to the {{ round }}</h2>
{% endif %}
{% endfor %}
……它不能正常工作?相反,它将输出相同的消息两次……例如,如果第一轮为空,第二轮不为空,它将输出第二条消息{{ user }} has already been assigned to the {{ round }} 两次。
我在搞砸什么?
【问题讨论】: