我的规则如下:
Router::connect('/Hotels', array('controller' => 'gesamtobjekt', 'action' => 'search', 'cat' => 8));
网址如下所示:domain.com/Hotels
我的分页网址如下:domain.com/Hotels/page:2
对于基于语言的网址,我有一条规则:
Router::connect('/:language/:catname/*', array('controller' => 'gesamtobjekt', 'action' => 'search', 'cat' => 8), array(
'catname' => 'Hotels|Hoteles',
'language' => 'eng|spa|fre|rus'
));
网址如下:domain.com/eng/Hotels
在这种情况下,我可以使用这些参数,所以我可以肯定,我是正确的规则。
'language' => 'eng',
'catname' => 'Hotels',
'cat' => (int) 8
我想知道为什么我的分页链接看起来像这样:
domain.com/gesamtobjekt/search/language:eng/page:2
我可以做些什么来获取像domain.com/eng/Hotels/page:2这样的分页网址? 我的规则缺少什么?
请提前告知,非常感谢你!
答案 0 :(得分:0)
尝试这样,可能会帮助你。
Router::connect('/:language/:catname', array('controller' => 'gesamtobjekt', 'action' => 'search', 'cat' => 8), array(
'pass' => array('language', 'catname'),
'catname' => 'Hotels|Hoteles',
'language' => 'eng|spa|fre|rus'
));
答案 1 :(得分:0)
很有趣,这对我有用:
if($this->Session->read('Config.language') != DEFAULT_LANGUAGE){
$this->Paginator->options(array(
'url' => array(
'controller' => $this->Session->read('Config.language'),
'action' => $this->params['catname'],
)
));
}