我没有在Play Framework中发现任何部分视图的概念,类似于Ruby on Rails的部分视图.例如,如果有layouts/main.scala.html
布局:
@(title: String)(content: => Html)(implicit flash: Flash)@title @content
而且还有layouts/_footer.scala.html
"部分",我如何_footer
加入main
?Play中有类似内容吗?
我认为RoR的部分观点过于复杂.关于Play模板要记住的事情,因为它们本质上只是可以直接从Scala代码调用的函数.而且,Play模板本质上是Scala代码.这意味着,可以从其他Play模板调用Play模板.所以,只需创建另一个名为的模板footer.scala.html
,例如:
<footer> Powered by Play Framework </footer>
然后从主模板中调用它,就像调用任何其他Scala函数一样:
@(title: String)(content: => Html)(implicit flash: Flash) <!DOCTYPE html> <html> <head> <title>@title</title> </head> <body> <section class="content">@content</section> @footer() </body> </html>
不可能更容易.