2011-11-25 10 views
5

Chciałbym coś takiego zrobić.Parametr dynamiczny w szablonie Scala dla PlayFramework

Oto główny szablon:

@(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> 

A oto jeszcze jeden:

@(user: User) 

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

    <b>@user.email (@user.role)</b> 

} 

Później nie działa, ponieważ nie z „@ user.email” w tytule parametr.

Jak mogę to zrobić?

PS: Wiem, że mogę to zrobić w inny sposób (dodaj "- Nazwa witryny" w głównym szablonie), ale jest to tylko przykład zrozumienia, jak działa Scala.

Odpowiedz

6

Trzeba złączyć strun, tak jak to było normalne kod Scala (bo jest):

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

Wszystko wewnątrz @() jest traktowany jako kod Scala.

+0

Wygląda na to, że teraz mi powiedziałeś: Dziękuję. Potrzebuję kawy, jak sądzę. :) – Zofren

+0

Tak, już miałem moje;) –

Powiązane problemy