Hallo KarlEgon,
Gerne. Ich werde das in nächster Zeit verstärkt testen und dann im Release 1.8-BETA es entsprechend ankündigen oder rausnehmen. Die Doku versehe ich noch mit einem Hinweis, dass als Tag-zu-Attribut-Trennzeichen ein Leerzeichen erwartet wird.
Gerne. Unter http://media.adventure-php-framework..._export.tar.gz steht nun ein ZIP mit dem Code des aktuellen trunks zur Verfügung. Ich habe im Rahmen der neuen Seite auch überlegt, nightly buiilds zur Verfügung zu stellen...
Das freut mich. Die große Hürde beim Einstieg ist sicher die generische Struktur, die einem aber mit der Zeit ans Herz wächst.
Das würde ich spontan auch so lösen. Vielleicht kannst du das - um die URL schöner aussehen zu lassen - auch mit einer statischen/permanenten Action lösen, die einfach nur Standard-Parameter aus der URL zieht und diese dann als Model-Informationen nutzt. Grundsätzlich ist das jedoch genau so sinnvoll. Übrigens ist das implizit schon HMVC!
Klar. Dir stehen in jedem Controller und jedem Tag der komplette DOM-Baum zur Verfügung. Mit den Attributen $this->__Document im Controller und $this->__ParentObject und $this->__Children in der Tag-Implementierung kannst du auf den kompletten Baum zugreifen. Die Art und Weise bestimmt die Komplexität deiner Struktur.
Um nun in einem konkreten Modul ein Template im "Haupt-View" zu definieren und in den Unterviews, die mit einem importdesign-Tag eingebunden wirden verwenden zu können, kannst du statt einem
auch einfach ein
schreiben und dieses verwenden. Wichtig ist dabei, dass du sicherstellst, dass es das Template auch gibt, sonst produzierst du ganz einfach einen Nullpointer. Auch wichtig ist, dass transformOnPlace() nicht funktioniert, da du das Template ja in einem anderen Bereich verwendest.
So etwas wie "importiere mir ein Template genau hier" gibt es nicht, du kannst soetwas jedoch ganz einfach umsetzen, indem du einfach einen weiteren Tag definierst, der das darin geparste Template bei seinem Vater (=Knoten, wo du es bei der Transformation im Controller haben möchtest) einhängt.
Wie ich oben schon meinte: die generische Struktur erschreckt zwar erst, ist aber hinterher sehr nützlich.
Viel Spass beim coden!
Danke für deine Zeit.
Ich denke ich werde das ganze dann dabei auf Blanks umstellen.
Ich denke ich werde das ganze dann dabei auf Blanks umstellen.
Habe im moment nur das Problem, dass ich die Sourceforge Dateien nicht einbinden kann, liegt irgendwie an dem Format oder so, bin mir da nicht so sicher. Gibt auf jedenfall Probleme beim Download, mit deinen Zip Files gab es diese Probleme nicht.
Kannst du es vielleicht in ein Zip Ordner packen und bereitstellen? Das wäre sehr nett.
Kannst du es vielleicht in ein Zip Ordner packen und bereitstellen? Das wäre sehr nett.
Ansonsten komme ich eigentlich ganz gut vorran und arbeite mich langsam ein. Es wird alles ein bisschen durchsichtiger und ich verstehe es besser.
Ist dies so die richtige Vorgehensweise oder sollte ich etwas anderes machen?
Kann ich irgendwie ein <html:template> global verfügbar machen, sodass ich es aus jedem Controller aufrufen kann?
Um nun in einem konkreten Modul ein Template im "Haupt-View" zu definieren und in den Unterviews, die mit einem importdesign-Tag eingebunden wirden verwenden zu können, kannst du statt einem
PHP-Code:
$Template = $this->__getTemplate('bla');
PHP-Code:
$parentTemplateName = 'DesiredName';
$parentTemplate = null;
$docParent = $this->__Document->__ParentObject;
$children = $docParent->getByReference('Children');
foreach($children as $objectId => $DUMMY){
if(get_class($children[$objectId]) == 'html_taglib_template' && $children[$objectId]->getAttribute('name') == $parentTemplateName){
$parentTemplate = $children[$objectId];
}
}
$parentTemplate->setPlaceHolder('Test','...');
echo $parentTemplate->transformTemplate();
So etwas wie "importiere mir ein Template genau hier" gibt es nicht, du kannst soetwas jedoch ganz einfach umsetzen, indem du einfach einen weiteren Tag definierst, der das darin geparste Template bei seinem Vater (=Knoten, wo du es bei der Transformation im Controller haben möchtest) einhängt.
Wie ich oben schon meinte: die generische Struktur erschreckt zwar erst, ist aber hinterher sehr nützlich.
Viel Spass beim coden!
Kommentar