Видео актуально для Symfony 7
В предыдущем видео у нас была ошибка, что если у нас есть какой-то аргумент, который передается в роуте, например id.
#[Route('/page/{id}', name: 'app_main')] public function index(): Response { return $this->render('main/index.html.twig', []); }
Если пользователь попытается обратиться к этому роуту не передав аргумент, мы получим ошибку 404, что страница не найдена.
Как же можно дать пользователю возможность не указывать значение какого-то конкретного атрибута?
Для этого мы должны указать значение по умолчанию для этого аргумента. Например, пустое значение.
#[Route('/page/{id}', name: 'app_main')] public function index($id=""): Response { return $this->render('main/index.html.twig', []); }
В этом случае в качестве значения аргумента будет подставлено значение по умолчанию, если пользователь ничего не передал в качестве значения аргумента для роута.
Таким образом, можно сделать любой аргумент в роуте не обязательным.
И важно правило. Если у вас есть несколько аргументов, необязательные аргументы должны обязательно находиться в самом конце списка всех аргументов.
Чтобы оставить сообщение, зарегистрируйтесь/войдите на сайт через:
Email - зарегистрироваться / войти