Използване на помощник в изглед, генериран от конзола/обвивка в CakePHP

Искам да използвам персонализиран и основния Html-Helper CakePHP 2.x в имейл изглед, генериран чрез конзолата на CakePHP. Използвам CakeEmail по нормалния начин, но не мога да разбера как да включа помощници.

Как да използвам/добавя/включа помощници в изглед, генериран чрез конзолата на CakePHP?

Добавянето на public $helpers = array('Html'); към обвивката не работи.


person lorem monkey    schedule 26.09.2012    source източник
comment
Пояснение: Изглежда, че изтълкувах погрешно грешките: в изгледа не липсваха помощните средства, липсваше основният URL адрес. Ако попаднете в ситуацията, в която смятате, че Html-Helper не работи, защото пълният URL адрес не се връща, вижте тук: stackoverflow.com/questions/11109785/   -  person lorem monkey    schedule 26.09.2012


Отговори (3)


документиран е тук: http://book.cakephp.org/2.0/en/core-utility-libraries/email.html#sending-templated-emails

$email->helpers(array('Html', 'Custom', 'Text'));
person mark    schedule 26.09.2012

За CakePHP 1.3 го направих по малко мръсен начин, но работи

App::import("Core", "Controller");
App::import("Controller", "App");

class SomeShell extends Shell { 

  function startup() { 
    $this->Controller =& new AppController();

    ...
  }
}

и AppController използва помощници, от които имам нужда в моя имейл шаблон. Какво мислиш?

person krzysu    schedule 21.11.2012

Това трябва да работи в shell (но само в cakePHP под 2.x):

App::import('Core', 'Helper');

$html = new HtmlHelper();
person Grzegorz Motyl    schedule 26.09.2012
comment
трябва също да подадете View обект - person mark; 26.09.2012