note
moritz
I started out with using HTML::Template, it was the first template system that I knew, and I liked it.
<p>I then read a [mod://Catalyst] tutorial, and that used TT. I really liked it, and started using TT.
<p>My first doubts about TT came when realized that it missed a killer feature that HTML::Template had: the <c>default_escape</c> option. It really makes all your worries about cross-site scripting go away.
<p>When I tried to make my web apps "Unicode Safe" I moved them from HTML::Template to [mod://HTML::Template::Compiled], which has the <code>open_mode</code> option to get rid of my UTF-8 worries.
<p>I started to write more things with Catalyst, DBIx::Class and TT, and came to the conclusion that this model, while much more powerful than HTML::Template + $otherStuff, tempted me to do bad things, like issuing DB queries from within the template (if you don't know what's bad about this, just think of how you'd handle error cases).
<p>So these days I mostly use HTML::Template::Compiled again.
734506
734506