есть ли разумный способ доступа к атрибуту представления "sentArgs" (или любому подобному)
/* view */
$this->passedArgs
из хелпера?
I Я был бы рад настроить _construct () помощника или настроить app_helper ... но я не хочу передавать $ this-> sentArgs
в помощник при каждом просмотре или использовании .
Cake 2.x и 3.x
Вы можете искать свои переменные в объекте _View
:
$this->_View->viewVars['foo'];
Cake 1.x
Если вы возьмете текущий объект view из хелпера, вы должны быть в состоянии добраться до его passedArgs.
class SomeHelper extends AppHelper {
function __construct($settings = array()){
$this->passedArgs = ClassRegistry::getObject('view')->passedArgs;
}
}
Cake 1.2.x
Если вы возьмете текущий объект представления из помощника, вы должны быть в состоянии получить его viewVars.
class SomeHelper extends AppHelper {
function __construct($settings = array()){
$this->viewVars = ClassRegistry::getObject('view')->viewVars;
}
}
Наслаждайтесь, Nick
Вы пробовали просто установить значение представления из AppController?
class AppController extends Controller {
function beforeFilter() {
// other stuff
$this->set( 'passed_args', $this->params['pass'] );
}
}