Когда-то давно я столкнулся с проблемой подключение tinyMCE редактора в качестве элемента формы. Я нашел в интернете руководство по интеграции этого замечательного редактора в Zend Framework.

С хелперами все работало замечательно, т.е. внутри шаблона можно было просто писать

$this->tinyMCE()->render();

и появлялся редактор 🙂

Однако, я привык к тому, чтобы делать инициализацию всех элементов формы при помощи компонента Zend_Form, чтобы впоследствии получить удобный механизм проверки всех элементов формы.

И здесь при создании нового элемента

// инициализация элементов формы
 // ….
 $this->createElement('tinyMCE', 'text');

появлялась ошибка

Plugin by name ‘TinyMce’ was not found in the registry; used paths: Zend_Form_Element_: Zend/Form/Element/

Тогда я только начинал знакомство с Zend Framework и убил много времени, чтобы побороть эту ошибку. Однако в итоге сделать этого не смог, выкрутился тем, что при создании элемента прописывал полное название класса

// инициализация элементов формы
 // ….
 $content = new Soulex_Form_Element_TinyMce('descr');

Соответсвенно TinyMce располагался в папке Soulex/Form/Element папки library.

Спустя некоторое время я начал делать свой хелпер для файлового менеджера. Файловый менеджер называется tinyBrowser.

И снова столкнулся с этой же самой проблемой.

Plugin by name tinyBrowser was not found in the registry

Поискав в интернете, снова увидел все теже самые статьи (люди спрашивали об интеграции tinyMce и ответа так не получали), когда я впервые столкнулся с этой ошибкой 😉

Не буду больше томить, решение оказалось как всегда простое. Достаточно ДО создания элемента прописать

public function init()
 {
 $this->addPrefixPath('Soulex_Form', 'Soulex/Form');
 // инициализация элементов формы
 }

Вот так все просто 😀

ps. В следующий раз выложу решение о том, как подключить свой файловый менеджер к форме в виде кастомного элемента.

Leave a Reply

One thought on “Кастомный элемент формы или Plugin by name xxx was not found in the registry”
  1. Огромнейшее тебе спасибо!!!
    Сам голову сломал в поисках решения 😀

Leave a Reply

Your email address will not be published. Required fields are marked *