Playframework2 中的 Scala 模板
Posted
技术标签:
【中文标题】Playframework2 中的 Scala 模板【英文标题】:Scala templates in Playframework2 【发布时间】:2012-08-01 12:14:21 【问题描述】:之前尝试过Play1.2.3
..我非常喜欢这个框架。
现在我正在尝试为此启动一个 Web 应用程序,我想尝试使用 Play2.0.2
(最新)。
已下载Play2.0.2 Java版..
*Play new myFirstApp >> play run >> Done as expected.* (Selected a simple Java app option 2 )
仔细查看views
中的html
文件
index.scala
& main.scala
为什么?
后来打开了index.scala
html文件
找到了这个:
@(message: String)
@main("Welcome to Play 2.0")
@play20.welcome(message, style = "Java")
上面的模板代码看不懂?
我是否需要具备 scala
知识才能与未来的 Playframework
版本相处?
【问题讨论】:
我非常了解 Scala,但没有阅读文档,我也无法理解模板。我建议你这样做。 @KimStebel : 浏览过文档,Scala 语句以特殊的@
字符开头。这是否意味着我的所有视图都将呈现到 scala 模板中?无法理解 play2.0
.. 中的很多 scala 内容,所以我的问题来了,我是否需要学习 scala
才能使用 Play2.0.2
模板被翻译成 Scala 代码,但在编写良好的应用程序中,模板中不会有太多逻辑。
@KimStebel : True As amnt 将在 UI 中添加任何逻辑...但只是想在开始使用有关 scala 的最新版本之前确定.. 如果涉及到很多 scala在其中,我最好坚持使用记录良好且管理良好的早期版本。
我使用的是 scala 版本,但据我所知,所有东西都有一个 Java API。
【参考方案1】:
是的,您需要一点 Scala 知识,但在模板所需的范围内,您可以在文档中找到的内容就足够了。
index.scala.html
是仅用于这一页的模板,main.scala.html
是类似的布局
Template decorators : #extends / and #doLayout / 来自 1.2.x(滚动到该部分)
除此之外,您还可以使用纯 Java 创建控制器和模型,请参阅 Play 2 源中包含的示例,您将在短时间内得到它,可以确保您。
【讨论】:
+1 用于澄清.. 还有一个问题:我是否需要重写整个应用程序,它是用play 1.2.3
编写的?
是的,您将无法轻松导入,因为 Play 1 和 2 差别很大。
Ohhh.. 给我的印象是进一步思考.. 未来的x
版本会不会一样?
我不这么认为,Play 2.0 已经发生了巨大的变化,因为在版本 1 中核心团队意识到他们想要从自定义框架中得到什么。我认为他们将来会使用这些知识,因此很有可能 Play 2 将得到比 1 更长更远的支持。这是我的看法以上是关于Playframework2 中的 Scala 模板的主要内容,如果未能解决你的问题,请参考以下文章
使用 Scala 播放 Framework 2.4.0 和 I18n
Play Framework 2.3 和 javascript websocket 客户端库
为啥在使用“sbt it:test”时不执行 Play/Scala 项目中的集成测试?