0

我创建了一个默认控制器,如下所示

namespace Mytest\VameBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;

class DefaultController extends Controller
{
public function indexAction()
{
    return $this->redirect($this->generateUrl('home'));
}

public function myactionAction($name)
{
    return new Response('<html><body>'.$name.'</body></html>');
}

}

路由文件如下所示。

use Symfony\Component\Routing\RouteCollection;
use Symfony\Component\Routing\Route;


$collection = new RouteCollection();

$collection->add('name', new Route('/vame',array(
    '_controller' => 'MytestVameBundle:Default:index',
    )));

$collection->add('home', new Route('/vame/{name}',array(
    '_controller' => 'MytestVameBundle:Default:myaction',
    'name' => 'hhhhhhhhhh',

)));

return $collection;

它显示以下错误

页面未正确重定向

我想要做的是,一旦使用索引操作调用默认控制器,它将使用一个参数重定向到 myaction 操作。

所以请任何帮助...

4

1 回答 1

5

您的应用程序以永远不会完成的方式重定向请求。所以你有某种重定向循环。

看来你的代码没问题。但是,您不应该在路由文件中硬编码参数,而是像这样

$this->redirect($this->generateUrl('home', array('name' => 'test')));

你有更多的路由定义吗?也许他们互相干扰。可以发一下你的日志吗?

于 2013-02-16T06:36:27.253 回答