Отправить параметр в redirectToRoute и получить его в контроллере - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь отправить параметр в перенаправлении, но получение в контроллере возвращает null:

Перенаправление:

    public function taskInUser(User $user): Response
    {
        return $this->redirectToRoute('task_add', ['user' => $user]);
    }

В контроллере:

    /**
     * @Route("/add", name="task_add")
     *
     */
    public function addAction(User $user = null): Response
    {
        dump($user);die();
        ...
    }

Я пытаюсь также:

    /**
     * @Route("/add", name="task_add")
     *
     */
    public function addAction(Request $request): Response
    {
        dump($request->query->get('equipment');die();
        ...
    }

И это не сработало. Я получаю null в контроллере, но я проверил, и он отправляет хорошее значение.

1 Ответ

1 голос
/ 14 апреля 2020

Почему вы не добавляете параметр в объявление маршрута? Смотрите здесь:

https://symfony.com/doc/current/routing.html#route -параметры

Вы можете использовать идентификатор пользователя как int:

    /**
     * @Route("/add/{user_id}", name="add_user")
     */
     public function addAction(int $user_id)

или использовать ParamConverter для преобразования идентификатора в Пользователь без использования функции репозитория.

https://symfony.com/doc/current/routing.html#parameter -конверсия

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