2013-02-14 84 views
6

我是新与Symfony的2 ..我想办法,基本的东西..我刚刚创建的命令行等把这个在我的控制器捆绑:控制器必须返回响应

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

class DefaultController extends Controller 
{ 
    public function indexAction($name) 
    { 
     return new Response('<html><body>Hello '.$name.'!</body></html>'); 
    } 
} 

和我有一个logicException“发生了。控制器必须返回一个响应”

这不是我在做什么吗?

感谢ü

PS:我想补充的routing.yml在应用

acme_hello: 
    resource: "@AcmeHelloBundle/Resources/config/routing.yml" 
    prefix: /

的routing.yml在资源

acme_hello_homepage: 
    pattern: /hello/{name} 
    defaults: { _controller: AcmeHelloBundle:Default:index } 
+0

你确定你所呼叫的正确路线? – moonwave99 2013-02-14 15:22:37

+0

很明显,它到达控制器..因此,路线是好的没有? – Marc 2013-02-14 15:24:20

+0

之前,我忘了写使用的Symfony \分量\ BrowserKit \响应; – Marc 2013-02-14 15:25:03

回答

20

控制器必须返回一个Symfony\Component\HttpFoundation\Response实例,所以你应该有:

use Symfony\Component\HttpFoundation\Response; 

代替

use Symfony\Component\BrowserKit\Response; 
相关问题