簡體   English   中英

Symfony-異常“具有鍵“ 0、1,..”的數組的鍵“ xy”不存在”。 使用細枝的標題功能時

[英]Symfony - Exception 'Key “xy” for array with keys “0, 1, ..” does not exist.' when using twig's title function

我試圖顯示指定表中的播放名稱,但出現錯誤

具有鍵“ 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>

下面是有關帶有關聯數組的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>

首先,替換$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的每一行的playName列名。

以前,您正在做:

{% for t in playName %}
    <h4 class="card-title ">{{ t.playName }}</h4>
{% endfor %}

因此,您添加了一個數組playName並且想要顯示{{ t.playName }} :playName是您的Twig名稱數組,而不是每一行的列名,因此您得到了兩個名稱相似的不同內容。

您可以嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM