【问题标题】:CakePHP Custom Route Classes - How to Pass Arguments?CakePHP 自定义路由类 - 如何传递参数?
【发布时间】:2011-12-26 17:15:00
【问题描述】:

我创建了一个自定义路由类,我希望能够将设置/选项传递给构造函数,以便它是可配置的。这个可以吗?

自定义路由类的文档:

http://book.cakephp.org/2.0/en/development/routing.html#custom-route-classes

我的自定义路由类:

https://github.com/Signified/CakePHP-Model-Route-Class

【问题讨论】:

    标签: cakephp routing cakephp-2.0


    【解决方案1】:

    您可能只需传递您在 Router::connect 函数选项中可能拥有的任何设置/选项。

    App::import('Lib', 'ModelRoute');
    Router::connect('/', array('controller' => 'pages', 'action' => 'display'),
        Array('routeClass' => 'ModelRoute',
              'someMoreOptions' => 'OptionValue' ));
    

    然后您可以在构造函数中检索 key someMoreOptions

    public function __construct($settings = array())
        {
            $this->settings = Set::merge($this->settings, $settings);
            // Now you can do something with the option passed.
            if(isset($this->settings['someMoreOptions'])
                DoSomethingWith($this->settings['someMoreOptions']);
        }
    

    【讨论】:

      猜你喜欢
      • 2011-10-28
      • 1970-01-01
      • 2016-11-14
      • 1970-01-01
      • 2012-09-28
      • 2021-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多