Как организовать смешанный URL в YII?

Хочу получить такой URL
site.ru/catalog/list?sort="name"&dir="DESC"
То есть чтоб основной урл (с контроллером и экшеном) был ЧПУ, а дополнительные параметры передавались после вопросительного знака.
Пишу так:
$this->createUrl('catalog/list', array(
            'id' => $this->cat_id,
            'sort_type' => $this->sort_type,
            'direction_type' => $this->direction_type,
        ));

Получаю:
http://guard.ru/catalog/id/17/sort_type/price/direction_type/DESC
  • Вопрос задан
  • 2253 просмотра
Решения вопроса 1
happyproff
@happyproff
Счастливый веб-разработчик
Нужно добавить в роутинг правило с именованным параметром id.
'/catalog/<id:\w+>' => '/yourController/yourAction',

Тогда id будет частью УРЛа, а остальные аргументы станут GET-параметрами. На выходе будет:/catalog/17?sort_type=name&direction_type=DESC
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы