【问题标题】:Passing controller argument to template, symfony2将控制器参数传递给模板,symfony2
【发布时间】:2015-07-27 15:28:56
【问题描述】:

我有这样的路线: 索引:

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

相对控制器是:

<?php
namespace Acme\DemoBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

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 中的值怎么办?我尝试使用渲染函数传递变量类别,但出现错误!先谢谢了!

【问题讨论】:

    标签: php symfony routes controllers


    【解决方案1】:

    render() 的第二个参数是可以在渲染模板中访问的参数数组。因此,如果您像这样传递 $category:

      public function indexAction($category)
        {
            $data = array("Content1", "Content2");
            return $this->render('AcmeDemoBundle:Default:index.html.twig', 
                  array('data' => $familiari, 'category'=>$category));
        }
    

    然后你可以在模板中使用:

    {{ category }}
    

    【讨论】:

      猜你喜欢
      • 2015-01-01
      • 2018-07-14
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      • 2015-09-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多