0

使用 CakePHP 1.3 我试图获得具有语言、slug、分页、顺序的路由器。

目前我有这些:

Router::connect('/', array('controller' => 'pages', 'action' => 'index'));
Router::connect("/:controller/:slug", array('action' => 'view'), array('pass' => array('slug')));
Router::connect("/:lang", array('controller' => 'pages', 'action' => 'index'), array('lang' => 'fr|en|de'));
Router::connect("/:lang/:controller/:slug", array('action' => 'view'), array('lang' => 'fr|en|de', 'pass' => array('slug')));

并且那些正在使用 language 和 slug set 或 slug 和 pagination ,但是它们都失败了:

OK - /pages/view/page-slug/page:2
OK - /fr/pages/page-slug
FAIL - /pages/view/page-slug/page:2/lang:fr

我努力了

<?php $this->Paginator->options(array('url' => $this->passedArgs)); ?>

在分页器之前,但结果仍然相同

4

1 回答 1

1

试试这段代码

Router::connectNamed(array('language','pagination','order','slug'));
    Router::connect('/lang/pagination/:slug:order', array(
        'plugin' => false,
        'controller' => 'pages', 
        'action' => 'index',
        ),array(
            "pass"=>array("lang","pagination","slug","order")
        ),array(
            'pagination' => '[0-9]+',
            'order' => '[0-9]+',
        )
    );
于 2013-03-02T08:51:53.363 回答