Есть таблица категорий товаров с полями:
cat_id: индекс категории
cat_name: название категории
parentcat_id: индекс родительской категории
alias: часть адреса - транслитерация названия категории (может содержать и буквы и цифры).
Например она содержит категории:
| cat_id | cat_name | parentcat_id | alias |
|---|
| 1 | Каталог | 0 | catalog |
| 2 | Телевизоры | 1 | tele |
| 3 | Авто | 1 | avto |
| 4 | Авто BMW | 3 | bmw |
| 5 | Дизельные | 4 | dizel |
Уровней вложенности 4 (это на практике, а в теории бесконечно).
Все материалы категории выводятся контроллером CategoryController, action: view($alias)
То есть если ввести адрес:
- site.ru/catalog/tele - нужно отловить $alias=tele и передать в экшн
- site.ru/catalog/avto/bmw - $alias=bmw
- site.ru/catalog/bmw/dizel - $alias=dizel
Как будут выглядеть правила UrlManager для данного случая?