2017-08-08 33 views
0

我試圖找出一個漫長的一天的問題。擴展控制器 - 什麼都不發生

我安裝了Sonata User Bundle,並使用它來管理用戶和配置文件版本等。

但是,我需要重寫Sonata Profile Controller。

如果我理解正確(我是Symfony中的完美初學者),我必須擴展SonataUserBundle(使用簡單擴展包完成)。

所以,當我聲明一個新的控制器時,沒有任何反應。甚至沒有錯誤消息。

任何想法?

這裏是我的文件

[BUNDLE擴展文件]

// ApplicationSonataUserBundle.php 

    namespace Application\Sonata\UserBundle; 

    use Symfony\Component\HttpKernel\Bundle\Bundle; 

    class ApplicationSonataUserBundle extends Bundle 
    { 
     /** 
     * {@inheritdoc} 
     */ 
     public function getParent() 
     { 
      return 'SonataUserBundle'; 
     } 
    } 

[Controller文件]

+0

「什麼都沒有發生」是什麼意思? –

+0

這意味着當我調用調用Sonata Profile編輯的路由時,它應該調用此控制器而不是傳統的Sonata控制器。我對嗎? –

回答

1

好了,所以我有我自己找到了答案:)

我忘了指定的班,我需要

use FOS\UserBundle\Model\UserInterface; 
use Symfony\Bundle\FrameworkBundle\Controller\Controller; 
use Symfony\Component\HttpFoundation\RedirectResponse; 
use Symfony\Component\HttpFoundation\Response; 
use Symfony\Component\Security\Core\Exception\AccessDeniedException; 
use Sonata\UserBundle\Controller\ProfileFOSUser1Controller as BaseController; 

我清除緩存,一切都ok了!

謝謝大家!

1

die('toto');作爲控制器的方法第一線,是不是要終止下面的所有代碼?

+0

我使用die()來查看是否檢測到Controller。沒有錯誤,沒有。 –