用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1983|回复: 6
收起左侧

关于分页的地址设置问题

[复制链接]
发表于 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
发表于 2013-3-21 15:34:36 | 显示全部楼层
一般的url是/controller/action/param/value
/news/p1 这个uri是不规则的,
估计要用rewrite才能做到,
看看是用的哪个web service ,参考下相应的rewrite语法
 楼主| 发表于 2013-3-21 16:17:59 | 显示全部楼层
caipeijie 发表于 2013-3-21 15:34
一般的url是/controller/action/param/value
/news/p1 这个uri是不规则的,
估计要用rewrite才能做到,

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

我自己写的类实现这个没有问题,只是想知道原生的要怎么玩。
发表于 2013-3-21 16:38:48 | 显示全部楼层
amu 发表于 2013-3-21 16:17
地址还原没有任何问题。重点是原生的那个分类有没有办法生成这样的分页地址。

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

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

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

看看行不行
 楼主| 发表于 2013-3-21 16:50:54 | 显示全部楼层
caipeijie 发表于 2013-3-21 16:38
在config/routes.php里面设置
$route['news/p([0-9]+)/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 这样的地址。

 楼主| 发表于 2013-3-21 16:52:55 | 显示全部楼层
实际项目中还是有很大的机会碰到一个复杂的分页地址。而这个页码很有可能根本不在这个地址的最后一个位置。
发表于 2013-3-21 18:03:11 | 显示全部楼层
amu 发表于 2013-3-21 16:50
额,不是这个意思。
我是说原生分页类,
$config['base_url'] = '/news/page/';

自己实现一个分类页,ci自带的分类页是比较简单。

本版积分规则