frankx: Zend Framework entwickelt sich weiter

Beitrag lesen

Hellihello

Das kapier ich alles, aber wo finde ich "die View". Einmal taucht sie in $frontController->view auf.
Dann in den einzelnen Scripts "/controller/views/controllername/methodname.phtml". Aber in letzterem will ich ja nich ein jedem einzelnen immer wieder auf die eine selbe css-Datei hinweisen, oder?

Nun ja ... seit ich mich das letzte Mal mit dem ZF beschäftigt habe sind eine Menge neue Dinge eingebaut worden, stellte ich grad fest. Früher übergab man dem ActionController noch selbst die View. Heute gibt es einen Default-Mechanismus, der (vermutlich) ein Zend_View-Objekt instantiiert, in einer vorgegebenen Verzeichnisstruktur nach einem Template sucht, das dem View-Objekt zuweist und zu gegebener Zeit rendert. Diesen Mechanismus kannst du überschreiben. initView() zu überschreiben scheint mir der passende Einstieg. Am besten schaust du in den Quelltext, was diese Methode konkret macht, und was du in einer von Zend_Controller_Action abgeleiteten Klasse machen musst, damit ein Objekt einer abgeleiteten, erweiterten Zend_View-Klasse geladen wird. Deine eigenen Kontrollerklassen lässt du dann von dieser Klasse statt von Z_C_A erben.

Gut zu wissen. Das dauert dann wohl ein Momentchen (;-).

Komisch eigentlihc, dass hier im Forum so wenig damit zu tun haben scheinbar.

Es ist für das typische Publikum hier vermutlich zu komplex - mit Kanonen auf Gästebücher geschossen. Man muss dazu ja OOP einigermaßen verstanden haben und wird dann auch noch mit MVC und anderen Konzepten konfrontiert. Es ist auch nicht sehr leicht, die Arbeitsweise zu verstehen. Während man im Wald&Wiesen-Script ständig die Kontrolle hat, bis auf die Stellen, an denen ein Funktionsaufruf in die Tiefen PHPs abtaucht, arbeitet das ZF hauptsächlich unter der Oberfläche und taucht gelegentlich auf, um User-Code zu verarbeiten.

Was sind denn die "Tiefen PHPs"?

Dass das ZF eben an der Oberfläche bedienbar ist, und auch selbst schreibt, dass der Hintergrund im Detail für einen "Nutzer" (also einen Entwickler auf ZF-Basis) nicht direkt relevant ist, heißt für mich aber im Umkehrschluss: PHP "richtig" verstehen, heißt auch alles rund um die spl und das OOP-Modell inklusive dem, wie ZF das nutzt, zu verstehen. Die abstrakten Hintergrundklassen sowie zB. die Nutzung bzw. Überschreibung der __autoload-Funktion (Loader.php), aber auch die magic_Methods (__toString) und die Einrichtung der von dir auch oben beschriebenen Defaultfunktionen (bezüglich der View, aber wohl auch des Dispatchers und vermutlich auch des Request- und Respons-Objektes). Der Quickstart lässt da so ein paar Konfigurationsmöglichkeiten noch ungenutzt, an Hand derer man sich ja sonst gut in die Tiefe hangeln könnte. Eigene Versuche gehen ja dann u.U. auch an sinnvollem "best practice" vorbei.

Dank und Gruß,

frankx

--
tryin to multitain  - Globus = Planet != Welt