Symfony - Sonata Admin - 从 FormField 重定向到列表

Symfony - Sonata Admin - Redirect from FormField to List

有没有办法在 SonataAdminBundle 中从 createAction 重定向到 listAction?

我需要它在访问被拒绝时重定向用户。

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

首先你需要添加使用RedirectResponse class.

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();
    }
}