amu 发表于 2013-3-21 10:11:19

关于分页的地址设置问题

分页时以下设置
$config['base_url'] = '/news/page/';
$config['total_rows'] = 500;
$config['per_page'] = 10;
$config['use_page_numbers'] = true;

将产生这样的分页地址:/news/page/1,/news/page/2,...

但是我想我想生成一个下面这样的地址,我该怎么弄?
/news/p1,/news/p2

下面的这样的地址,我又该怎么弄?
/news/p1/list,/news/p2/list

下面的这样的地址,我又该怎么弄?
/news/p1?class=10&id=5,/news/p2?class=10&id=5

caipeijie 发表于 2013-3-21 15:34:36

一般的url是/controller/action/param/value
/news/p1 这个uri是不规则的,
估计要用rewrite才能做到,
看看是用的哪个web service ,参考下相应的rewrite语法

amu 发表于 2013-3-21 16:17:59

caipeijie 发表于 2013-3-21 15:34 static/image/common/back.gif
一般的url是/controller/action/param/value
/news/p1 这个uri是不规则的,
估计要用rewrite才能做到,


地址还原没有任何问题。重点是原生的那个分类有没有办法生成这样的分页地址。

我自己写的类实现这个没有问题,只是想知道原生的要怎么玩。

caipeijie 发表于 2013-3-21 16:38:48

amu 发表于 2013-3-21 16:17 static/image/common/back.gif
地址还原没有任何问题。重点是原生的那个分类有没有办法生成这样的分页地址。

我自己写的类实现这个没有 ...

在config/routes.php里面设置
$route['news/p(+)/list'] = "news/page/$1";

把/news/p1/list转到news/page/1里面去.

看看行不行

amu 发表于 2013-3-21 16:50:54

caipeijie 发表于 2013-3-21 16:38 static/image/common/back.gif
在config/routes.php里面设置
$route['news/p(+)/list'] = "news/page/$1";



额,不是这个意思。
我是说原生分页类,
$config['base_url'] = '/news/page/';
$config['total_rows'] = 200;
$config['per_page'] = 20;
$this->pagination->create_links();
这样生成分页链接地址始终是在 /news/page/ 后面加页码,如/news/page/1。
他生成不了如 /news/p1 这样的分页链接地址。就算我将上面的 base_url 改成 /news/p。这个分页数始终会在p的后面添加一个/.

你说的这个是路由设置。如果自定义我说的 /p1这样的分页地址,这个路由肯定是要添加。

问题是现在那个分页类生成不了 /p1 这样的地址。

amu 发表于 2013-3-21 16:52:55

实际项目中还是有很大的机会碰到一个复杂的分页地址。而这个页码很有可能根本不在这个地址的最后一个位置。

caipeijie 发表于 2013-3-21 18:03:11

amu 发表于 2013-3-21 16:50 static/image/common/back.gif
额,不是这个意思。
我是说原生分页类,
$config['base_url'] = '/news/page/';


自己实现一个分类页,ci自带的分类页是比较简单。
页: [1]
查看完整版本: 关于分页的地址设置问题