Thread HTML::Template->loop (Geltungsbereich der Variablen)
(27 answers)
Opened by roooot at 2009-05-15 17:42 2009-05-19T17:08:23 pq Und anstatt <TMPL_VAR asd> kann man auch. <%= asd %> etc. nutzen das ist in meinen Augen schon eine andere syntax. Ein HT Nutzer kann mit deinen ganzen speziel Tags erstmal nichts anfangen. Ansonsten wo ich gerade über deine Doku schaue. War es bei dir nicht auch Möglich das man einfach ein Array übergibt und jeden Wert durchlaufen kann in HTC, ohne das man das Array vorher in AoH umwandeln muss? Quote Zu dem Thema haben wir ja den anderen Pfad. Quote Beides sind Templating System, aber klar sind beide etwas anderes. Wenn es nicht was anderes wäre warum gibt es dann HT, HTC, TT, Petal und noch zig andere Templating Systeme? Quote Das es unnötig ist habe ich nicht behauptet. Hat man bereits HT und möchte es erweitern mag es noch ein gutes Drop-In Replacement sein. Ansonsten ist die Aufgabe eines Templating Systems nicht logik von nicht logik zu Trennen, und auch nicht die Aufgabe von MVC. Sie sind dafür da unterschiedliche Logiken voneinander zu trennen. Im View kommt die Logik zum Anzeigen, und auch nur dort. Und nicht im Controller oder im Model. Der View könnte genauso Perl sein, wenn man dort eben nur Anzeigelogik verbaut. Die Trennung ist dafür da das du jedes System für sich anpassen/ändern kannst. Keine Logik hättest du nur ausschließlich dann wenn du eine Statische Seite auslieferst. Sobald du aber schleifen durchlaufen kannst, Werte vergleichen kannst etc. steckt da auch Logik dahinter. Ein Templating System muss über genug Logik verfügen um Daten aufzubereiten. Wie es sie aufbereitet, ob nun HTML, XML, JSON oder wie es die Daten darstellt ist dann komplett die Logik des Views. Je nachdem wie stark das Templating System aber eingegrenzt ist, ist man letztendlich dazu gezwungen immer mehr anstatt im View woanders zu machen. Bei HT ist das extrem. Durch die ganzen Idiotischen Datenstrukturen die man im vorfeld aufbauen muss steckt schon ein erheblicher Teil des Aufbaus für den View im Controller/Model wo es nicht hingehört. Was ist wenn man die Daten ganz anders darstellen möchte, zum Beispiel hat man mehrere Templates zur auswahl? Dann müssen die Datenstrukturen im Code entsprechend darauf angepasst werden. Der Funktionsumfang eines Templating systems hat also schon damit zu tun wie gut es seine aufgabe erfüllt. Quote Wenn du Logik die zum anzeigen benötigst auch im Template nutzt ist das volkommen okay, dafür ist es ja da. Wenn ein Templating System dich aber begrenzt Anzeigelogik woanders einzubauen dann erfüllt es seinen Zweck meiner Ansicht nach nicht. Ob das mit HTC nun volkommen umgesetzt werden kann weiß ich nicht. Da ich noch davon ausging das dein HTC keine Funktionsparameter kann, wäre das ein Grund gewesen zu sagen das es die aufgabe nicht einwandfrei erfüllt. Bei HT weiß ich aber das es die Aufgabe so gut wie überhaupt nicht erfüllt. TT erfüllt diese aufgabe ziemlich gut. Quote An "global_vars" sehe ich auch nichts schlimmes. Wenn ich in Perl zwei for Schleifen geschachtelt habe, dann ist es nur natürlich das ich in der innersten for schleife auch auf variablen auf den übergeordneten Scope darauf zugreifen kann. Eigentlich ist "global_vars" auch keine gute bezeichnung für die Funktionalität die man dafür bekommt. Zu den Datenstrukturen habe ich ja oben etwas geschrieben, ich denke da stimmen wir überein. :) Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
|