#golang テンプレート関数を自作するには?

Posted by kwmt on Sun, Mar 24, 2013

Go言語の”text/template”パッケージで使用出来るテンプレートの関数は、文字列を出力するprint、ある引数の長さを出力するlenや配列の要素を出力するindexなどありますが(本家,翻訳参照)、このようなテンプレート関数を自作することができます。

サンプル

下記は、golang.orgにあるサンプル翻訳したものですが、テンプレート関数として{{title .}} のようにすると、titleがstrings.Titleの処理を行うような関数として作成できますという例です。

これは,型FuncMap(単なるmap)で、”作成したいテンプレート関数”:処理したい関数 を定義して、template.Funcs関数で、テンプレートに先ほど定義したFuncMapを登録しています。



comments powered by Disqus