Golang – Revel View Template関数

今回は、ビュー(画面側)でテンプレート関数を使用する方法についてまとめていきたいと思います。

フレームワークはRevelを使用します。

以下の内容は自分が調べた内容をもとに記載していますので、事実とは違う可能性もあります。

TemplateFuncsとは

  • Revelフレームワークを利用時、画面側でチェック処理やフォーマット変換処理を行うときに使われる関数です。

使ってみましょう

revel.TemplateFuncs[アクセス変数] = 関数の宣言部と内容
  • Revelプロジェクトの配下にinit.goファイルのinit関数内に実装します。
  • revel.TemplateFuncs[アクセス変数]を利用して、宣言します。
    • アクセス変数:ビュー(画面側)でアクセスする変数名となります。
  • 上記は実際、使い方の例となります。
  • User構造体をパラメータとして管理者権限なのかをチェックしています。
  • ビューからアクセスするときは「isAdmin」でアクセスができます。
ビュー(画面)
  • 上記はビュー(画面側)でinit.goに宣言したTemplateFuncsのアクセス例となります。
  • {{$currentUser := .currentUser}}:range内でcurrentUserをアクセスできるように宣言しています。
  • {{if isAdmin $currentUser}}:「isAdmin」でTemplateFuncsをアクセスし、パラメータとしてcurrentUserを渡しています。結果わbool型なので、条件分岐に使っています。

終わりに

今回は、revelのTemplateFuncsについてまとめてみました。

上記の例以外にも以下のように日付フォーマットだったり設定もできるので、簡単で、管理がしやすいと感じました。

コメントを残す