0

我是新手,使用play2.0框架。现在我在使用 xxx.scala.html 时遇到了麻烦。在 Eclipse 中,我添加了一个 xxx.scala.html,但我不能使用“xxx.render()”函数来呈现我的 html。

现在我在视图包中创建了一个 form1.scala.html。我想在控制器中呈现这个 html,就像这样“返回 ok(form1.render());”。但它不能。为什么我不能?

我已经检查了 Play-Sample(例如:'form' 应用程序)。在这个应用控制器类中,他自己使用了form1.scala.html、form2.scala.html、summary.scala.html等进行防御。没关系。但我不能这样使用。

4

1 回答 1

0

views是一个常规的 Scala/Java 包,但是当模板编译器运行时,它会在它放置已编译模板的包下添加一个 'html' 包。所以源代码app/views/myTemplate.scala.html导致函数views.html.myTemplate

视图模板本身就是函数,而不是类或对象,文件名成为函数名,没有render()方法。

因此,如果您有文件 app/views/myTemplate.scala.html,您将能够像这样使用它:

Ok(views.html.myTemplate())

或者

import views.html.myTemplate
Ok(mytemplate())
于 2013-07-26T08:47:40.397 回答