我正在尝试显示指定表中的播放名称,但出现错误
具有键“ 0、1、2、3、4、5”的数组的键“ playName”不存在。
我知道错误的出处,但我不知道下一步该怎么做。
public function playTicketsAction(Request $request)
{
$query = $this->getDoctrine()
->getRepository('AppBundle:Play')
->findAll();
$build['playName'] = $query;
return $this->render('@FrontTemplates/pages/tickets.html.twig', array(
'playName' => $build
));
}
和树枝
<div class="card-header card-header-warning">
{% for t in playName %}
<h4 class="card-title ">{{ t.playName }}</h4>
{% endfor %}
<p class="card-category"> Here you can choose available ticket category</p>
</div>
答案 0 :(得分:0)
下面是有关带有关联数组的for标签的示例:
<div class="card-header card-header-warning">
{% for t in playName.playName %}
<h4 class="card-title ">{{ t }}</h4>
{% endfor %}
<p class="card-category"> Here you can choose available ticket category</p>
</div>
答案 1 :(得分:0)
首先,将$build['playName'] = $query;
替换为$build = $query;
。
然后更改您的Twig变量名称:
return $this->render('@FrontTemplates/pages/tickets.html.twig', array(
'query_result' => $build // change it so it's not "playName"
));
您的Twig变量{{ query_result }}
将是一个数组,是查询的结果。
现在在您的Twig模板中,只需执行以下操作即可:
{% for t in query_result %}
<h4 class="card-title ">{{ t.playName }}</h4>
{% endfor %}
现在,您将获得查询所包含的每一行的playName
列名。
之前,您正在做的事情:
{% for t in playName %}
<h4 class="card-title ">{{ t.playName }}</h4>
{% endfor %}
因此,您添加了一个数组playName
,并且想要显示{{ t.playName }}
:playName是您的Twig名称数组,而不是每一行的列名,因此您得到了两个名称相似的不同东西。
你还好吗?