Маршрут Symfony 4 не найден

Я использую маршруты по аннотациям, и все в порядке, за исключением одного конкретного маршрута, в котором я просто не вижу проблемы.

NotFoundHttpException No route found for "PUT /responder/questionario/1/questao/6/pessoa/2/resposta/11"

Маршрут проложен следующим образом:

//Class route
/**
 * @Route("/responder")
 */
//Method route
/**
 * @Route("/questionario/{id}/questao/{qId}/pessoa/{pId}/resposta/{$rId}", name = "api_responder_questionario_questao_resposta", methods = "PUT")
 */

Как видите, это запрос PUT, единственный, существующий на данный момент во всей системе.

Отладка маршрута возвращает этот маршрут (последний в списке):

 --------------------------------------------- -------- -------- ------ ------------------------------------------------------------------------- 
  Name                                          Method   Scheme   Host   Path                                                                     
 --------------------------------------------- -------- -------- ------ ------------------------------------------------------------------------- 
  api_cargo_new                                 POST     ANY      ANY    /cargo/novo                                                              
  api_cargo_edit                                POST     ANY      ANY    /cargo/{id}/editar                                                       
  api_cargo_index                               GET      ANY      ANY    /cargo/                                                                  
  api_cargo_get                                 GET      ANY      ANY    /cargo/{id}                                                              
  api_empresa_new                               POST     ANY      ANY    /empresa/novo                                                            
  api_empresa_edit                              POST     ANY      ANY    /empresa/{id}/editar                                                     
  api_empresa_index                             GET      ANY      ANY    /empresa/                                                                
  api_empresa_get                               GET      ANY      ANY    /empresa/{id}                                                            
  api_frequencia_new                            POST     ANY      ANY    /frequencia/novo                                                         
  api_frequencia_edit                           POST     ANY      ANY    /frequencia/{id}/editar                                                  
  api_frequencia_index                          GET      ANY      ANY    /frequencia/                                                             
  api_frequencia_get                            GET      ANY      ANY    /frequencia/{id}                                                         
  api_perfilAcesso_new                          POST     ANY      ANY    /perfilAcesso/novo                                                       
  api_perfilAcesso_edit                         POST     ANY      ANY    /perfilAcesso/{id}/editar                                                
  api_perfilAcesso_index                        GET      ANY      ANY    /perfilAcesso/                                                           
  api_perfilAcesso_get                          GET      ANY      ANY    /perfilAcesso/{id}                                                       
  api_pessoa_new                                POST     ANY      ANY    /pessoa/novo                                                             
  api_pessoa_edit                               POST     ANY      ANY    /pessoa/{id}/editar                                                      
  api_pessoa_index                              GET      ANY      ANY    /pessoa/                                                                 
  api_pessoa_get                                GET      ANY      ANY    /pessoa/{id}                                                             
  api_questaoTipo_new                           POST     ANY      ANY    /questao/tipo/novo                                                       
  api_questaoTipo_edit                          POST     ANY      ANY    /questao/tipo/{id}/editar                                                
  api_questaoTipo_index                         GET      ANY      ANY    /questao/tipo/                                                           
  api_questaoTipo_get                           GET      ANY      ANY    /questao/tipo/{id}                                                       
  api_questionario_new                          POST     ANY      ANY    /questionario/novo                                                       
  api_questionario_edit                         POST     ANY      ANY    /questionario/{id}/editar                                                
  api_questionario_index                        GET      ANY      ANY    /questionario/                                                           
  api_questionario_get                          GET      ANY      ANY    /questionario/{id}                                                       
  api_questionario_questao_new                  POST     ANY      ANY    /questionario/{id}/questao/novo                                          
  api_questionario_questao_edit                 POST     ANY      ANY    /questionario/{id}/questao/{qId}                                         
  api_recompensa_new                            POST     ANY      ANY    /recompensa/novo                                                         
  api_recompensa_edit                           POST     ANY      ANY    /recompensa/{id}/editar                                                  
  api_recompensa_index                          GET      ANY      ANY    /recompensa/                                                             
  api_recompensa_get                            GET      ANY      ANY    /recompensa/{id}                                                         
  api_responder_index                           GET      ANY      ANY    /responder/                                                              
  api_responder_questionario_questao_resposta   PUT      ANY      ANY    /responder/questionario/{id}/questao/{qId}/pessoa/{pId}/resposta/{$rId}

Действия, которые я уже сделал, это очистка кеша, изменение приоритета этого запроса на контроллере, а позже я создал контроллер для этого случая, всегда очищая кеш. Первоначально этот запрос был GET, но я изменил его на PUT, чтобы сделать его более эксклюзивным и простым для отладки.

последний маршрут - /responder/questionario/{id}/questao/{qId}/pessoa/{pId}/resp‌​osta/{$rId}, вы уверены в $ для последнего параметра?

Cid 05.02.2019 16:14

Спасибо @Cid, вы правы насчет опечатки, я неправильно ввел полное имя переменной. Насчет маршрута, он был заявлен в классе, я его добавил в вопрос.

Felipe Chagas 05.02.2019 16:23

Разве это не должно быть methods = {"PUT"}?

Pipe 05.02.2019 17:38

@Труба не обязательно.

Felipe Chagas 05.02.2019 17:43

Вы удалили $, как говорит @Cid? (Пожалуйста, обновите код)

Pipe 05.02.2019 17:48

@Pipe, да, я сделал. Это сработало, как я сказал в ответ на комментарий Сида, спасибо!

Felipe Chagas 05.02.2019 17:50

@Cid не стесняйтесь публиковать ответ.

Felipe Chagas 05.02.2019 17:50

@FelipeChagas не нужно, на самом деле это не вопрос, так как это скорее опечатка, чем реальная проблема.

Cid 05.02.2019 17:59

@ Сид Понял! Я обновлю вопрос и закрою его, спасибо.

Felipe Chagas 05.02.2019 18:04
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
9
323
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Как ответил @Cid в комментариях: в моем коде была опечатка:

С ошибкой:

/**
 * @Route("/questionario/{id}/questao/{qId}/pessoa/{pId}/resposta/{$rId}", name = "api_responder_questionario_questao_resposta", methods = "PUT")
 */

Правильный:

/**
 * @Route("/questionario/{id}/questao/{qId}/pessoa/{pId}/resposta/{rId}", name = "api_responder_questionario_questao_resposta", methods = "PUT")
 */

Когда у тебя "старый" проект, все уже правильно настроено (много рабочих маршрутов), и вроде бы все на месте, то должно было быть как-то так. Спасибо за подсказку.

connectedMind 14.10.2021 09:58

Другие вопросы по теме