Каким образом лучше решить такую задачу:
Вот маршрут в формате обычного ЧПУ:
htt://domain.com/user/list
Где user - контроллер, а list - действие
Необходимо в начале каждого маршрута указывать id сущности, с которой происходит работа, вот так:
htt://domain.com/25/user/list
И при этом нужно, чтобы создавались контроллеры и вызывались действия по обычному сценарию, если id этой сущности (25) существует в БД.
UPDATE
25 - это ID проекта, а не юзера. И маршрут просит дать всех юзеров проекта с ID=25.
Другой пример:
htt://domain.com/ru/user/list
Или:
htt://domain.com/en/user/list
В конфиге сайта (backend || frontend)/main.php указываешь
'urlManager' => [
'showScriptName' => false,
'enablePrettyUrl' => true,
'rules' => [
'<locale:\w+>/<controller>/<action>' => '<controller>/<action>'
],
],
При запросах на http://domain.com/en/user/list/ будет отправлять по сути на
http://domain.com?r=user&action=list&locale=en
В качестве <locale:\w+> можешь писать любое название например <id:\d+>, это будет переменной для get запросов. \w+ это означает что любые символы [a-zA-Z0-9]+ а \d+ это цифры [0-9]
Сборка персонального компьютера от Artline: умный выбор для современных пользователей