如何从模板生成正确的URL中的Symfony2 /枝条

问题描述:

我与Symfony2的工作和:如何从模板生成正确的URL中的Symfony2 /枝条

我有这样的修改routing.yml

_welcome: 
    resource: "@AcmeBundle/Controller/" 
    type:  annotation 

我的控制之内这个方法:

/** 
* @Route("/{page}") 
*/ 
public function staticAction($page) 
{ 
    return $this->render('AcmeBundle:Static:'.$page.'.html.twig'); 
} 

生成通用网页:

/home 
/contact 
/privacy 

但是,当我让网址在菜单上:

<a href="{{ path('_welcome', {'page': 'home'}) }}">Home</a> 
<a href="{{ path('_welcome', {'page': 'contact'}) }}">Contact</a> 
<a href="{{ path('_welcome', {'page': 'privacy'}) }}">Privacy</a> 

我的Symfony生成以下网址:

…./?page=home 
…./?page=contact 
…./?page=privacy 

而且正确的是:

/home 
/contact 
/privacy 

我必须做什么?

您对您的控制器路线注解如下添加路由名称,

/** 
* @Route("/{page}", name="static") 
*/ 
public function staticAction($page) 
{ 
    // ... 
} 

然后,您可以使用这个名称叫树枝path帮手,

<a href="{{ path('static', {'page': 'home'}) }}">Home</a> 
+0

非常感谢你我朋友!那就对了! :d – rpayanm 2013-04-07 00:48:07