0

我正在使用这种语法:

<ul>
<?php echo $this->Paginator->prev($this->Html->image('arrow_left.png', array('border' => 0, 'tag'=>'li')), array('escape'=>false, 'tag'=>'li')); ?>
<?php echo $this->Paginator->numbers(array('separator' => '', 'tag'=>'li')); ?>
<?php echo $this->Paginator->next($this->Html->image('arrow_right.png', array('border' => 0, 'tag'=>'li')), array('escape'=>false, 'tag'=>'li')); ?>
</ul>

这为我创建了链接,例如

<li>
<a href="/mycontrollername/search/cat:1/page:4?url=slugged_url">4</a>

有什么办法可以摆脱 url 中的控制器和操作,而使用 url 参数?

我的意思是,而不是像

http://domain.com/mycontrollername/search/cat:1/page:2?url=slugged_url

我想得到类似的东西

http://domain.com/slugged_url/cat:1/page:2

那可能吗?如果是,如何?

我对每页结果有同样的问题:

<?php
$sortDir = ($this->Paginator->sortDir() == 'asc') ? $this->Paginator->sortDir(): 'desc';
$text = ($sortDir == 'asc')? __('aufsteigend', true):__('absteigend', true);
echo $this->Paginator->sort('OBJ_PREIS', $text, $options = array('escape' => false, 'direction'=>'DESC', 'class' => 'asc'))`;
?>

我也可以在那里更改网址吗?

请指教!

谢谢!!

4

1 回答 1

0

这可以使用路由来实现。路由会将 URL 重写为“漂亮”的东西。

查看官方的 CakePHP 书籍。它有一个关于路由的完整章节。

这本书提供了大量示例,说明您也可以对路线进行不同的操作。

于 2013-11-11T15:29:56.193 回答