Symfony 4 Упростить код условия в контроллере? - PullRequest
0 голосов
/ 28 октября 2019
public function edit(User $user)
{
    if (false === $this->isGranted('USER_EDIT_PROFILE', $user)) {
        $this->get('session')->getFlashBag()->add('error', 'Message');
        return $this->redirect($this->get('request_stack')->getCurrentRequest()->headers->get('referer'));
    }

    return $this->render('admin/user/edit.html.twig', [
        'user' => $user,
    ]);
}

Есть предложения по оптимизации таких выражений? Вы можете создать метод,

    if (false === $this->isGranted('USER_EDIT_PROFILE', $user)) {
        return $this->denyAccessRedirect('Message');
    }

, но он все еще требует больше кода, чем

$this->denyAccessRedirect('Message');

Проблема в том, что контроллер должен вернуть ответ. И метод вызывается без return

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...