這似乎已經出現了其他用戶,但我還沒有看到一個答案,看起來與我試圖實現的相關。CakePHP路由與分頁
所以基本上我在/admin/portfolio/
爲我的投資組合管理面板,當我去到下一個頁面,我得到這樣的:/admin/portfolio/index/page:2
和/admin/portfolio/index/page:1
1)如何從刪除索引網址是什麼?所以它只是/admin/portfolio/page:2
2)如何讓這個page:1
只是/admin/portfolio/
,如果有人試圖進入頁面1,那麼它只是改變的URL /重定向他們只是沒有參數的指標。否則,這意味着我有重複的第一頁。
正如我前面說過的,我在網上查看了一些示例,但它們都顯得非常混亂,並且與我使用的代碼不同(請參見下文),因此我不確定如何實現我正在做的事情。
<?php echo $this->Paginator->numbers(); ?>
<?php echo $this->Paginator->prev('« Previous', null, null, array('class' => 'disabled')); ?>
<?php echo $this->Paginator->next('Next »', null, null, array('class' => 'disabled')); ?>
<?php echo $this->Paginator->counter(); ?>
我已經試過這樣:
<?php $this->Paginator->options(array('url'=>array(
'admin'=>true,
'controller' => 'portfolio',
'action' => 'index'))); ?>
但我仍然得到該指數在url
但是添加此:Router::connect('/admin/portfolio/*',array('admin'=>true,'controller'=>'portfolio','action'=>'index'));
沒有擺脫從URL中的指數,但是這會導致第二個問題,因爲任何東西都可以添加到URL,因此不再嚴格,並顯示404的時候查看虛假網頁
所以我也試過:
Router::connect('/admin/portfolio/:page',
array('admin'=>true,'controller'=>'portfolio','action'=>'index',
array(
'pass' => array('page'),
'page'=> '[0-9]+'
)));
但是這不起作用,因爲路由沒有看到頁面!
任何,因爲我真的難倒了這個更新:/感謝 – Cameron