4

当我使用 CakePHP Paging 时,我得到一个这样的 url:

http://example.com/php/page:2

我必须在控制器、视图和 routes.php 中进行哪些更改才能创建这样的工作 url:

http://example.com/php/2
4

3 回答 3

2

哦,是的,现在我看到了你的问题。好吧,您可以执行以下操作:

function index($page){
  $this->paginate = array('page'=>$page);
  $this->set('stuff', $this->paginate('YourControllerName'));
}

有关详细信息,请参见此处:http: //bakery.cakephp.org/articles/view/basic-pagination-overview-3

另外,当然你应该做一些验证页面是一个实际的数字,页面甚至会存在,但我认为这是它的基础。

关于路线和观点,我没有尝试过,但是看看蛋糕组的这些帖子,我想他们和你的问题相似。

http://www.mail-archive.com/cake-php@googlegroups.com/msg45878.html

于 2009-07-03T11:22:12.980 回答
1

试试这个链接:

http://www.sakic.net/blog/chang-cakephp-pagination-urls/

于 2009-10-23T03:51:47.870 回答
0

我的猜测是这并不容易自动化,你肯定需要做一些调整。

对于初学者,您可能必须创建自己的分页器助手并继承默认的。从代码的外观来看,您需要覆盖 PaginatorHelper::__pagingLink() 中的链接生成代码,但可能还有 numbers() 和 prev() 等。因为它们都使用页面参数创建链接。

也许更好的方法是覆盖您的 AppHelper::url(),检查那里的“页面”参数并修改 url 以适应您的需求。

但是,我还没有尝试过所有这些,所以不能保证..

于 2009-07-04T14:37:16.303 回答