【问题标题】:CakePHP routing parametersCakePHP 路由参数
【发布时间】:2014-01-27 06:32:07
【问题描述】:

我正在构建一个 Web 应用程序,并且一直在用特定的路由规则撞墙。

这是我想要达到的 URL。

localhost/admin/location/123/pages/index

我正在使用管理员前缀,通过在 app/config/core.php 中取消注释以下内容可以正常工作

Configure::write('Routing.prefixes', array('admin'));

'location/123' 我想本质上作为参数传递,因此 id 为 123 的位置,'pages' 是控制器,'edit' 是操作。

还有其他控制器可以替换“页面”,因此这需要是动态/通配符。例如,一个位置可能有页面、帖子、用户等。

谁能帮我写下Router::connect 语句?我从文档中尝试的一切似乎都不起作用。

非常感谢!

詹姆斯

【问题讨论】:

    标签: php cakephp cakephp-2.0


    【解决方案1】:
    Router::connect(
        '/admin/location/:location/:controller/:action/*', 
         array('admin' => 'true'),
         array('location' => '[0-9]+')
    );
    

    例如,如果您转到/admin/location/123/pages/display/home,它将转到PagesControllerdisplay 操作和home 参数。

    $this->request->params,这条路由会发送admin = truelocation = 123

    【讨论】:

    • 绝对完美,谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-23
    • 2018-04-22
    • 1970-01-01
    • 2015-11-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多