Symfony2:如何访问第二页?

时间:2014-06-16 17:47:45

标签: symfony web

我是Symfony的新手,因此某些文档中的代码可能没有意义。无论如何,我正在建立一个网站,到目前为止,我在它上面写了两页(我认为一个叫做“web”,另一个叫做“术语”)。但是,我不知道如何在路由方面访问第二页。这是我的代码:

1。 TermsController.php

<?php

namespace Acme\WebBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class TermsController extends Controller
{
    public function indexAction($some)
    {
        return $this->render('AcmeWebBundle:Terms:index.html.twig');
    }
}

2。 /WebBundle/Resources/config/routing.yml

网络:

pattern:  /web
defaults: { _controller: AcmeWebBundle:Default:index }

_terms:

pattern: /web/terms
resource: "@AcmeWebBundle/Controller/TermsController.php"

我应该通过http:// * /app_dev.php/web/terms访问第二页,但是我收到了错误。

* = localhost

1 个答案:

答案 0 :(得分:0)

如果TermsController的indexAction与您指定的完全相同,那么为什么使用$ same参数?你正是因为这个原因而得到错误。

您应该在TermsController中从indexAction中删除$ some,或者在路由配置中指定$ some的默认值。这样的事情:

_terms:
   path: /web/terms/{some}
   defaults:
       _controller: AcmeWebBundle:Terms:index
       some: ''

或者如果您不使用路线参数:

_terms:
   path: /web/terms
   defaults:
       _controller: AcmeWebBundle:Terms:index

您可以查看Symfony2 routing文档。