Помогите составить роутер

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
MozgoEd
Сообщения: 31
Зарегистрирован: 2012.06.18, 10:51

Помогите составить роутер

Сообщение MozgoEd »

Подскажите, пожалуйста, как прописать настроуку роутера так, чтобы проходил вот такой запрос http:/test.ru/search/?q=погода. Да, да, именно знак вопроса должен быть в строке запроса. Мой конфиг сейчас такой:

Код: Выделить всё

                                    'urlManager' => array(
                                        'urlFormat' => 'path',
                                        'showScriptName' => false,
                                        'caseSensitive' => true,
                                        'rules' => array(
                                            '' => 'site/index',
                                            'search/?<text>' => 'site/search',
                                        ),
                                    ),
Но запрос не проходит на акшен. Я думаю проблема, как раз в знаке вопроса, но он мне нужен в строке. Возможно это происходит из-за urlFormat=>'path'. Спасибо всем, кто обратит внимание и окажет любую помощь в разрешении проблемы.
MozgoEd
Сообщения: 31
Зарегистрирован: 2012.06.18, 10:51

Re: Помогите составить роутер

Сообщение MozgoEd »

И тут же сразу, пагинация через ListView делает урл для страницы вот такой http://site.ru/search/?q=погода?page=2. Теперь получается целых два символа ? в строке. Как быть? Как заставить пагинатор писать "&" вместо "?" ? Какой роутер должен быть, чтобы проходил такой запрос http://site.ru/search/?q=погода&page=2 ???
kawabanga
Сообщения: 806
Зарегистрирован: 2013.10.12, 23:35
Откуда: Новосибирск

Re: Помогите составить роутер

Сообщение kawabanga »

'search' => 'site/search',
MozgoEd
Сообщения: 31
Зарегистрирован: 2012.06.18, 10:51

Re: Помогите составить роутер

Сообщение MozgoEd »

kawabanga писал(а):'search' => 'site/search',
очень смешно
Аватара пользователя
iAchilles
Сообщения: 41
Зарегистрирован: 2014.09.11, 19:44

Re: Помогите составить роутер

Сообщение iAchilles »

А что смешного? Вам правильное решение подсказали.
MozgoEd
Сообщения: 31
Зарегистрирован: 2012.06.18, 10:51

Re: Помогите составить роутер

Сообщение MozgoEd »

iAchilles писал(а):А что смешного? Вам правильное решение подсказали.
А то, что это не работает и не может работать. Если бы все было так просто, я бы тему не поднимал.
Аватара пользователя
iAchilles
Сообщения: 41
Зарегистрирован: 2014.09.11, 19:44

Re: Помогите составить роутер

Сообщение iAchilles »

MozgoEd писал(а): А то, что это не работает и не может работать. Если бы все было так просто, я бы тему не поднимал.
Это тоже не работает?

Код: Выделить всё

'search' => array('site/search', 'urlSuffix' => '/')
 
View

Код: Выделить всё

<form method="get" action="<?php echo $this->createAbsoluteUrl('site/search') ?>">
<input type="text" name="q">
<input type="submit" value="Search">
</form>
Знак вопроса подставляется автоматически перед параметром запроса, который не определен в правиле маршрутизации И никаких знаков вопроса в роут добавлять не нужно вообще.
MozgoEd
Сообщения: 31
Зарегистрирован: 2012.06.18, 10:51

Re: Помогите составить роутер

Сообщение MozgoEd »

iAchilles писал(а):
MozgoEd писал(а): А то, что это не работает и не может работать. Если бы все было так просто, я бы тему не поднимал.
Это тоже не работает?

Код: Выделить всё

'search' => array('site/search', 'urlSuffix' => '/')
View

Код: Выделить всё

<form method="get" action="<?php echo $this->createAbsoluteUrl('site/search') ?>">
<input type="text" name="q">
<input type="submit" value="Search">
</form>
Знак вопроса подставляется автоматически перед параметром запроса, который не определен в правиле маршрутизации И никаких знаков вопроса в роут добавлять не нужно вообще.
Да, да. Я уже разобрался, была проблема с пагинатором, он ставил просто ? вместо /?. А ваша подсказка про urlSuffix очень помогла. Я даже не сообразил, что можно через него сделать слеш в конце. Спасибо за помощь. Очень помогли. Удачи!
Аватара пользователя
iAchilles
Сообщения: 41
Зарегистрирован: 2014.09.11, 19:44

Re: Помогите составить роутер

Сообщение iAchilles »

Не за что :)
Ответить