2017-02-13 1 views
0

createAction에서 SonataAdminBundle의 listAction으로 리디렉션 할 수있는 방법이 있습니까?Symfony - Sonata Admin - FormField에서 List로 리디렉션

액세스가 거부되면 사용자를 리디렉션해야합니다.

$curUser = $this->getConfigurationPool()->getContainer()->get('security.token_storage')->getToken()->getUser(); 
    if ($this->getSubject()->getId() && $this->getSubject()->getUser()) { 
     if ($this->getSubject()->getUser() != $curUser) { 
      REDIRECT HERE 
     } 
    } 

답변

2

먼저 RedirectResponse 클래스를 추가해야합니다. 그 후

use Symfony\Component\HttpFoundation\RedirectResponse; 

:

$curUser = $this->getConfigurationPool()->getContainer()->get('security.token_storage')->getToken()->getUser(); 
if ($this->getSubject()->getId() && $this->getSubject()->getUser()) { 
    if ($this->getSubject()->getUser() != $curUser) { 
     $redirection = new RedirectResponse($this->getConfigurationPool()->getContainer()->get('router')->generate('your_route_name')); 
     $redirection->send(); 
    } 
} 
+0

@Fatih 카베 안녕하세요, 감사합니다 -이 양식의 소나타 목록 경로를 얻을 수있는 방법이 있나요? – cRsakaWolf

+0

@cRsakaWolf 잘 모르겠지만 목록에 경로 이름을 찾을 수 없습니다. 그러나 debug : router 명령을 사용하여 쉽게 찾을 수 있으며 원하는 경로 이름을 찾을 수 있습니다. –

관련 문제