CakePHP вложенная маршрутизация с добавлением действия - PullRequest
0 голосов
/ 12 декабря 2018

Я занимаюсь разработкой CakePHP приложения.Однако я столкнулся с проблемой, которую не знаю, как решить.

У меня есть следующие маршруты в моих routes.php:

Router::scope('/', function ($routes) {
    $routes->resources('Teams', function ($routes) {
        $routes->resources('Events');
    });
});
Router::connect('/teams/:action/*', array('controller' => 'teams'));

, что приводит к следующим URL-адресам:

http://test.com/teams/76/events/205 -> отображение действия просмотра в контроллере событий http://test.com/teams/76/events -> отображение действия индекса в контроллере событий

Проблема!http://test.com/teams/76/events/add выдает мне ошибку, The action 76 is not defined in TeamsController!.

Я искал все маршруты, используя bin/cake routes, и обнаружил, что это маршруты, которые у меня есть.

|    events:index            | /teams/:team_id/events         | {"controller":"Events","action":"index","_method":"GET","plugin":null}          |
| events:add              | /teams/:team_id/events         | {"controller":"Events","action":"add","_method":"POST","plugin":null}           |
| events:view             | /teams/:team_id/events/:id     | {"controller":"Events","action":"view","_method":"GET","plugin":null}           |
| events:edit             | /teams/:team_id/events/:id     | {"controller":"Events","action":"edit","_method":["PUT","PATCH"],"plugin":null} |
| events:delete           | /teams/:team_id/events/:id     | {"controller":"Events","action":"delete","_method":"DELETE","plugin":null}  

Даже если я попытаюсь перенаправить на / команды / 76 / события сPOST метод тогда меня не перенаправляет add.ctp.

Спасибо за вашу помощь !!

...