2011-11-11 5 views
1

Я создал собственный класс маршрутов, и я хочу иметь возможность передавать в параметрах/параметрах конструктор, чтобы он был конфигурируемым. Это можно сделать?CakePHP Custom Route Classes - Как передать аргументы?

Документация для пользовательских классов Маршрут:

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

Мой заказ маршрут класс:

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

ответ

0

Вы, вероятно, может просто передать какие-либо настройки/опции, которые могут возникнуть в параметры вашей функции Router :: connect.

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

Затем вы можете получить ключ 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']); 
    } 
Смежные вопросы