2016-10-20 25 views
0

У меня есть помощник, который мы используем во всех наших приложениях CakePHP, которые я пытаюсь расширить, чтобы включить метод, специфичный для приложения. Однако я хотел бы обратиться к помощнику по его первоначальному имени.Расширить Помощник, используя оригинальное имя

например, вместо

$appSpecificHelperName->method() 

Я хочу, чтобы мой ребенок класс называется именем базового класса:

$helperName->method() 

в представлении.

Есть ли способ сделать это? Это конкретно в Cake 1.2, но приложение будет обновлено до Cake 2 или, возможно, 3 в следующем году, и я хотел бы знать решение для любой/любой версии.

ответ

0

нашел ответ в документации:

Один общий параметр для использования является возможность имя класса, который позволяет создавать псевдонимы помощников в своих взглядах. Эта функция полезна, когда вы хотите заменить $ this-> Html или другой общий опорный Helper с пользовательской реализации:

// app/Controller/PostsController.php 
class PostsController extends AppController { 
    public $helpers = array(
     'Html' => array(
      'className' => 'MyHtml' 
     ) 
    ); 
} 


// app/View/Helper/MyHtmlHelper.php 
App::uses('HtmlHelper', 'View/Helper'); 
class MyHtmlHelper extends HtmlHelper { 
    // Add your code to override the core HtmlHelper 
} 
+0

.. это работает только в торт 2+ – froodley

 Смежные вопросы

  • Нет связанных вопросов^_^