· golang Go言語 template

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

  • このエントリーをはてなブックマークに追加

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

サンプル

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

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

[4]: https://github.com/kwmt/golangwiki/blob/master/src/pkg/text/template/exampletemplate_func.go

  • このエントリーをはてなブックマークに追加
  • LinkedIn
  • Tumblr
  • Reddit
  • Google+
  • Pinterest
  • Pocket