将控制器参数传递给模板symfony2



我有一个这样的路由:指数:

path:     /{category}
defaults: { _controller: AcmeDemoBundle:Index:index, category: "default" }
requirements:
categoria: "foo|bar|this|or|that"

,相对控制器为:

<?php
namespace AcmeDemoBundleController;
use SymfonyBundleFrameworkBundleControllerController;
class IndexController extends Controller
{
    public function indexAction($category)
    {
        $data = array("Content1", "Content2");
        return $this->render('AcmeDemoBundle:Default:index.html.twig', array('data' => $familiari));
    }
}
?>

如果我想在模板index.html.twig中使用存储在$category中的值该怎么办?我试着用渲染函数传递变量类别,但我得到一个错误!事先谢谢!

render()的第二个参数是一个可以在渲染模板中访问的参数数组。如果你像这样传入$category

  public function indexAction($category)
    {
        $data = array("Content1", "Content2");
        return $this->render('AcmeDemoBundle:Default:index.html.twig', 
              array('data' => $familiari, 'category'=>$category));
    }
然后你可以在模板中使用:
{{ category }}

最新更新