В Cakephp используется помощник для установки переменных шаблона - PullRequest
2 голосов
/ 09 сентября 2009

Можно ли установить переменную шаблона в помощнике?

В конечном итоге я пытаюсь добавить вспомогательный код в заголовок макета для использования с javascript и т. Д.

Способы, которые я могу придумать, я бы предпочел не использовать:

  • Передача объекта просмотра: не нужно беспокоиться о необходимости вызова дополнительной функции
  • используя ключевое слово "global", чтобы получить представление, я действительно не хочу использовать это, кроме как в крайнем случае, так как это не считается ортодоксальным

Есть мысли?

Обновление 2012-02-20: Как торт, который был обновлен совсем недавно, я попытался включить ответы на Cake 1.2, а также на Cake 2. Спасибо Адаму и Марк за их рекомендации

1 Ответ

4 голосов
/ 09 сентября 2009

Я обнаружил, что вы можете использовать реестр классов, чтобы получить его, поэтому я сделал эту функцию в своем помощнике:

/**
 * Access to the view for special operatoins
 */
protected function getView() {
    return ClassRegistry::getObject('view');
}

Обновление 2013-02-20: Я написал выше для Cake 1.2, Адам (в комментарии ниже) предложил использовать $this->_View->viewVars['var'] для Cake 2.3, который выглядит хорошо, но у меня нет способа проверить.

...