Sto cercando di imparare il gioco 2.0 con scala ma non penso di capire come funziona il sistema di template per il gioco 2.0. Ho usato il gioco 1.2 prima e sto cercando un equivalente al # {include 'views/blah.html' /}. In sostanza, voglio creare una barra di navigazione che sia resa su tutte le pagine.include file scala.html in gioco 2.0 scala
sostanzialmente in main.scala.html ho
@(title: String)(navbar: Html)(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.7.1.min.js")" type="text/javascript"></script>
</head>
<header>
This is my header
</header>
<section class="navbar">@navbar</section>
<section class="content">@content</section>
<footer>
This is my footer
</footer>
e nel mio index.scala.html:
@navbar = {
<h1>Index</h1>
<ul>
<li>
<a [email protected]>Tasks</a>
</li>
</ul>
}
@main("Home")(navbar){
content
}
in task.scala.html:
@(tasks: List[Task], taskForm: Form[String])
@import helper._
@main("Home") {
<h1>Index</h1>
<ul>
<li>
<a [email protected]>Tasks</a>
</li>
</ul>
} {
task code
}
Ora per includere questo na VBB sembra che devo ripetere questo in ogni pagina in questo modo avrei dovuto codice duro questa barra di navigazione in ogni pagina. C'è un modo per farlo senza scrivere l'intera barra di navigazione in ogni pagina?
Ho anche cercato di creare un file che contiene navbar.scala.html
<h1>Index</h1>
<ul>
<li>
<a [email protected]>Tasks</a>
</li>
</ul>
e il salvataggio in vista/quindi importando che l'utilizzo di @import views.navbar
ma poi ottengo un errore che indica 'barra di navigazione non è membro di punti di vista '. Sto scrivendo questo in Eclipse Java EE IDE indigo se questo aiuta.
quando uso '@navbar' visualizza questo: BaseScalaTemplate ([email protected]), al posto del navbar.scala.html reale – Darbs
ci puoi mostrare il tuo codice? – Somatik
Oh sì probabilmente è necessario aggiungere parens. Ho modificato la mia risposta. –