Zend Framework - plugin durch den Namen wurde nicht gefunden in der registry
Beim Aufruf einer Funktion in meinem views/helpers/ Datei, von meinem Skript in views/scripts/ , bekomme ich diesen Fehler:
Meldung: Plugin by name 'SetBlnCompany' wurde nicht gefunden in der registry;
verwendete Pfade: My_View_Helper_:
/www/zendserver/htdocs/Entwicklung/application/views/helpers/
Zend_View_Helper_:
Zend/View/Helper/:/www/zendserver/htdocs/Entwicklung/application/views/helpers/
bootstrap.php
protected function _initConfig()
{
Zend_Registry::set('config', new Zend_Config($this->getOptions()));
date_default_timezone_set('America/Chicago');
}
protected function _initAutoload() {
$autoloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'My',
'basePath' => dirname(__FILE__),
));
return $autoloader;
}
Anwendung.ini
resources.view.helperPath.My_View_Helper = APPLICATION_PATH "/views/helpers"
application/views/helpers/DropdownHelper.php
class Zend_View_Helper_Dropdownhelper extends Zend_View_Helper_Abstract
{
public $blnCompany = false;
public function getBlnCompany() {
return $this->blnCompany;
}
public function setBlnCompany($blnCompany) {
$this->blnCompany = $blnCompany;
}
}
script verursacht Fehler
<?php
$this->setBlnCompany(true);
//...etc...
?>
BEARBEITEN, um hinzuzufügen mehr hintergrund Informationen zu meinem post.
Idealerweise würde ich diesen "dropdown-helper" - Klasse, haben eine Funktion für "html" eine Funktion für "get javascript" , und viele setter-Funktionen zum festlegen von Optionen vor dem getHtml und getJavascript genannt werden.
- Just FYI, alle Klassen, die Sie machen, sind nicht Teil der ZF nicht starten sollte mit
Zend_
. Es würde jemand denken, dass dein view helper ist wirklich gebaut, in der ZF und fügt eine zusätzliche lookup für den autoloader.Note: Important: Code that must be deployed alongside Zend Framework libraries but is not part of the standard or extras libraries (e.g. application code or libraries that are not distributed by Zend) must never start with "Zend_" or "ZendX_".
Finden Sie unter Zend Framework - Namenskonventionen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Helfer, muss den gleichen Namen haben als Ihre Methode. Ändern
Zend_View_Helper_Dropdownhelper
inZend_View_Helper_GetBlnCompany
und es wird funktionieren. Vergessen Sie nicht, zu ändern, Ihre Dateinamen zu: GetBlnCompany.phpDamit eine proxy-Methode, müssen Sie einfach
return $this;
:Dann müssen Sie rufen Sie Ihren view-helper wie folgt: