CLinkPager в CGridView экранирует символы в url

Предварительное обсуждение найденных ошибок перед отправкой их авторам фреймворка, а также внесение новых предложений.
Ответить
R3D3
Сообщения: 352
Зарегистрирован: 2010.04.11, 14:52

CLinkPager в CGridView экранирует символы в url

Сообщение R3D3 »

Обнаружил проблему, из-за которой у меня некорректно работает пагинация в CGridView

У меня установлен модуль yiiadmin, в котором есть действие question/list, в нем выводится список моделей Question с помощью CGridView.

При попытке перейти на вторую страницу списка моделей в лог записывается ошибка:

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

2010/09/08 00:26:39 [error] [exception.CHttpException.404] exception 'CHttpException' with message 'Системе не удалось найти запрашиваемое действие "yiiadm$
Stack trace:
#0 /opt/yii/framework/web/CController.php(262): CController->missingAction('yiiadmin')
#1 /opt/yii/framework/web/CWebApplication.php(324): CController->run('yiiadmin')
#2 /opt/yii/framework/web/CWebApplication.php(121): CWebApplication->runController('site/yiiadmin)
#3 /opt/yii/framework/base/CApplication.php(135): CWebApplication->processRequest()
#4 /var/www/index.php(13): CApplication->run()
#5 {main} REQUEST_URI=/pflu/index.php?r=site/yiiadmin
 
Посмотрел через firebug, оказывается на сервер отправляется такой запрос:

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

http://localhost/index.php?r=yiiadmin%2Fquestion%2Flist&Question_page=2&ajax=yw0
Из-за этого фреймворк пытается вызвать действие site/yiiadmin, которого нету.

По моему, запрос должен выглядеть так:

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

http://localhost/index.php?r=yiiadmin/question/list&Question_page=2&ajax=yw0
Причем если посмотреть исходник страницы, на ней ссылка выглядит так:

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

<li class="page"><a href="/index.php?r=yiiadmin/question/list&Question_page=2">2</a></li>
<li class="next"><a href="/index.php?r=yiiadmin/question/list&Question_page=2">Следующая ></a></li>
То есть слеши не экранируются, а амперсанды экранируются.

Как можно отключить экранирование слешей? Является ли это проблемой браузера? Проверял в firefox и chromium
Yii Jabber Conference: [email protected]
Ответить