如何使用Symfony将参数传递给控制器​​?

时间:2012-08-07 08:21:55

标签: php symfony controller

我将var argurmrnt传递给像这样的控制器

return $this->redirect($this->generateUrl('user_profile', array('var' => $profile->getId())));

这是我的控制器

/**


         * @Route("/profile", name="user_profile")
         * @Template()
         */
        public function ProfileAction($var)
        {
            $em = $this->getDoctrine()->getEntityManager();

但我一直收到错误

  

控制器“xxxx \ Controller \ UserController :: ProfileAction()”需要   你为“$ var”参数提供了一个值(因为没有   默认值或因为此后有一个非可选参数   一个)。

1 个答案:

答案 0 :(得分:8)

根据docs

,您忘记在路线中添加占位符
    /**
     * @Route("/profile/{var}", name="user_profile")
     * @Template()
     */
    public function ProfileAction($var)
    {
        $em = $this->getDoctrine()->getEntityManager();