Play! frameworkのテンプレートでパターンマッチを使う方法

Play!のテンプレートは型安全だし、中でScalaが使えるのでそこそこ便利なんだけど、スペースの有無でコンパイルが通らなかったりとか、色々面倒な部分も。

特にパターンマッチを使いたかったのに、なかなかうまく行かなくて色々試行錯誤した。

結論から言うと、以下のように改行を入れるとOKだった(公式サイトのTemplateのuse caseのページより引用)。

@level match {

  case "success" => {
    <p class="success">
      @body("green")
    </p>
  }

  case "warning" => {
    <p class="warning">
      @body("orange")
    </p>
  }

  case "error" => {
    <p class="error">
      @body("red")
    </p>
  }

}

環境:Play! framework 2.2

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です