CakePHP: префикс в URL для каждой команды

Я занимаюсь разработкой веб-сайта CakePHP 3. Я хотел бы показать контент, основанный на команде. И в каждом контроллере я хотел бы получить доступ к текущей команде.

Например.:

www.url.com/team1 -> Team = team1, Controller = Home, Action = Index

www.url.com/team2 -> Team = team2, Controller = Home, Action = Index

www.url.com/team3 -> Team = team3, Controller = Home, Action = Index

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

0

Решение

// HomeController.php
public function index($team = null) {
echo 'Hello Team ' . $team;
}

// routes.php
Router::connect(
'/team:id',
['controller' => 'Home', 'action' => 'Index'],
['id' => '[0-9]+']
);

Ссылка

1

Другие решения

просто используйте свой routes.php 🙂

В маршрутах .php:

Router::connect('/team/*', array('controller'=>'Home', 'action'=>'index'));
In products_controller.php:

В Controller.php

function index($id = null) {
echo "Team" . $id;
}

http://book.cakephp.org/2.0/en/development/routing.html

0