PlayFramework用のScalaテンプレートの動的パラメータ

私はそのようなことをしたいと思います。

ここにメインテンプレートがあります:

@(title: String)(content: Html)
<!DOCTYPE HTML>
<html>
    <head>
        <title>@title</title>
        <link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/main.css")">
        <link rel="shortcut icon" type="image/png" href="@routes.Assets.at("images/favicon.png")">
        <script src="@routes.Assets.at("javascripts/jquery-1.6.4.min.js")" type="text/javascript"></script>
    </head>
    <body>
        @content
    </body>
</html>

もう一つはここにあります:

@(user: User)

@main(title = "@user.email - SiteName") {

    @user.email (@user.role)

}

後者は、 title パラメータの "@ user.email"で失敗したため動作しません。

どうやってやるの ?

PS:私はこれを別の方法で行うことができることを知っています(メインテンプレートに " - SiteName"を追加します)が、Scalaの仕組みを理解するための単なる例です。

5

1 答え

通常のScalaコードと同じように、文字列を連結する必要があります(そのためです):

@main(title = user.email + " - SiteName") {
  @user.email (@user.role)
}

@()の中のすべてがScalaコードとして扱われます。

6
追加された
うん、私はすでに私のものだった;)
追加された 著者 Marius Soutier,
今あなたが私に言った明らかに見える:)ありがとう。私が思ういくつかのコーヒーが必要です。 :)
追加された 著者 Zofren,