2010-12-09 4 views
0

kann mir jemand sagen, wie zend Aktion Helfer genau arbeiten, ich meine, obwohl ich habe sie schon in meinem Code ich fühle mich etwas, was ist in meinem Verständnis fehlt:zend Aktion helpres Nutzung von den Erklärungen Controller benötigt

z.B Ich habe einige Sache wie diese

$this->_helper->viewRenderer->setRender('edit',null,true); 

ich meinen Code, so dass ich in der Lage sein werde, Add-Aktionen zu machen Bearbeiten von Seiten zu verwenden (da das Hinzufügen ist das gleiche wie die Bearbeitung ..... auf UI Basis @ mindestens

)

aber meine Frage ist hier, soweit ich das _helper sehen kann, ist eine Instanz von

/** 
* Helper Broker to assist in routing help requests to the proper object 
* 
* @var Zend_Controller_Action_HelperBroker 
*/ 
protected $_helper = null; 

aber wenn ich versuche, diese Klasse in der Bibliothek Ordner zu sehen „Zend_Controller_Action_HelperBroker“ ich kann nicht finden eine Eigenschaft mit dem Namen „viewrenderer“

Antwort

2

Die $_helper ist eine magische kleine Sache, die Aktion Helfer lädt bei Bedarf. Es sieht in registrierten Pfade - die standardmäßig Zend/Controller/Action/Helper - das ist, wo Sie die viewRenderer Helfer finden.

Die Tatsache, dass die Klasse keine viewRenderer -Eigenschaft hat, ist, weil der HelperBroker alle Anfragen über die magische __call-Methode behandelt.

Dieser Aufruf Methode sucht einen Helfer (in diesem Fall viewrenderer) und ruft die direct() Methode für das Helfer.

+0

wenn ich bekommen Sie richtig, dass ich eine der Methoden in diesem Pfad „Zend/Controller/Action/Helper“ gefunden rufen bedeutet kann, indem diese $ -> _ Helfer -> $ eine der Klassen in diesem Pfad dann - > $ irgendeine Methode in diesem Pfad (dh in diesen Klassen) ($$$ params); – jspeshu

+0

Ihr Verständnis ist richtig. Du wirst die Antwort von js kommentieren müssen. Ich weiß nicht, auf welche du dich beziehst. –

Verwandte Themen