在Symfony控制器

时间:2015-12-30 18:34:41

标签: symfony

我对Symfony比较新,目前使用的是v 2.8。我已成功使用@Template注释:

/**
 * @Route("/editleague/")
 * @Template()
 */
public function editAction() {
  return $array;
}

并且在Bundle / Resources / views / Default / edit.html.twig成功呈现了twig模板

我决定我想要一个不同的响应(不是Twig模板),如果它是一个post请求,所以为了开始,我将上面的代码更改为:

/**
 * @Route("/editleague/")
 */
public function editAction() {
  return $this->render("Default/edit.html.twig",$array);
}

但我得到500错误。我已经尝试了各种组合,但是在我可以控制函数本身的渲染模板的地方没有任何工作。我相信这是一个简单的问题,拥有更多经验的人可以在几秒钟内找到答案。

1 个答案:

答案 0 :(得分:1)

由于您的模板位于bundle的Resources目录中,因此您应该在调用中使用Symfony逻辑名来呈现:

'AppBundle:Default:edit.html.twig'

或:

':Default:edit.html.twig'
存储在捆绑包中的模板路径与app目录中的模板之间的

See the difference