2008-11-21
■[NanoA] NanoA のテンプレートエンジン
NanoA のテンプレートエンジン (ということはつまり MENTA::Template) は、エスケープの有無を明示的に指定する方式なんだけど、めんどくさいなーと思った (TT よりマシだけど)。なので、確か Ruby on Rails がそうだったけかなとか思いながら、RawString 型を使う自動エスケープに変更した。
<?= "この文字列はエスケープされます" =>
<?= $app->render("include_another_template") =>
前者はスカラーなので自動エスケープされるが、後者は返ってくるのが RawString 型なのでエスケープしない (二重エスケープにならない)。そんな感じ。もちろん明示的に、
<?=r "never escape my <>!" ?>
と、エスケープを拒否することもできる。
MENTA::Template を呼び出す側もいろいろ変更しなきゃいけないので、MENTA 側の svn にはコミットせずに、NanoA 内に私家版の MENTA::Template を置くようにした。とりあえず。
トラックバック - http://d.hatena.ne.jp/kazuhooku/20081121/1227267264
リンク元
- 27 http://reader.livedoor.com/reader/
- 9 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GGIH_jaJP225JP225&q=connection,refused,ポート,LISTEN
- 7 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja:official&hs=NQs&q=テンプレートエンジン+c++&btnG=検索&lr=lang_ja
- 6 http://d.hatena.ne.jp/tokuhirom/
- 6 http://labs.ceek.jp/hbnews/list.cgi
- 5 http://d.hatena.ne.jp/
- 5 http://d.hatena.ne.jp/hide-K/20081112/1226499186
- 5 http://labs.ceek.jp/hbnews/
- 4 http://blog.yappo.jp/yappo/archives/000618.html
- 4 http://fastladder.com/reader/
