簡體   English   中英

使用Silex的app.url_generator.generate將路由參數傳遞到Twig模板

[英]Passing route parameter to Twig template using Silex's app.url_generator.generate

我正在使用Silex創建一個快速的網站。 我試圖將變量從路由傳遞到動態頁面中的視圖。

這是我的控制器代碼:

$app->get('/clients/view/{refnum}', function (Silex\Application $app, Request $request, $refnum) {
    return $app['twig']->render('client.twig', array('flag'=>0, 'refnum' => $refnum));
})->bind('client_view');

這是我的樹枝代碼:

{% extends 'layout.html.twig' %}

{% block pagecontent %}

<div class="container-fluid">
    <div class="row">
<h1>Hello, {{ refnum|default('Not Found!')|capitalize }}!</h1>
    </div>
</div>

{% endblock %}

當我在瀏覽器中直接輸入http:// foobar / clients / view / 123之類的URL時,它可以工作。

但是,我試圖在我的頁面中動態創建鏈接。

這是一個HTML片段,顯示了我在做什么:

<td><a href="{{ app.url_generator.generate('client_view', {'refnum': {{refnum}}  } ) }}">John Smith</a></td>

我收到Twig異常消息:

ExpressionParser.php第281行中的Twig_Error_Syntax:哈希鍵必須是帶引號的字符串,數字,名稱或用括號括起來的表達式(行“ clients.home.twig”中值“ {”的意外標記“標點”) 47

我該如何解決?

試試看:

<td><a href="{{ app.url_generator.generate('client_view', {'refnum': refnum  } ) }}">John Smith</a></td>

暫無
暫無

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

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