Yii 1 分页在不同的控制器中显示不同的行为
Yii 1 Pagination showing different behaviour in different controllers
在我的 Yii 应用程序中,一些控制器返回分页 URL 如下:
http://example.com/blog/index?page=2
如果我在其他控制器中编写了相同的代码,则分页URL显示如下:
http://example.com/blog/index/page/2
知道为什么它在不同的控制器中显示不同吗?我需要页码作为查询字符串(如第一个 URL)。
终于找到问题了,我在路由文件中遗漏了以下规则,导致了这个问题。
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
这应该添加如下:
return array(
......
'components'=>array(
......
'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
),
),
);
在我的 Yii 应用程序中,一些控制器返回分页 URL 如下:
http://example.com/blog/index?page=2
如果我在其他控制器中编写了相同的代码,则分页URL显示如下:
http://example.com/blog/index/page/2
知道为什么它在不同的控制器中显示不同吗?我需要页码作为查询字符串(如第一个 URL)。
终于找到问题了,我在路由文件中遗漏了以下规则,导致了这个问题。
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
这应该添加如下:
return array(
......
'components'=>array(
......
'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
),
),
);