我在非播放sbt项目中使用Twirl,并定义了一个模板:
hello.scala.html
<h1>Welcome hello world</h1>
它生成一个包含以下代码的Scala文件:
package html
import play.twirl.api._
import play.twirl.api.TemplateMagic._
import io.github.freewind.feverblog._
/**/
object hello extends BaseScalaTemplate[play.twirl.api.HtmlFormat.Appendable,Format[play.twirl.api.HtmlFormat.Appendable]](play.twirl.api.HtmlFormat) with play.twirl.api.Template0[play.twirl.api.HtmlFormat.Appendable] {
/**/
def apply():play.twirl.api.HtmlFormat.Appendable = {
_display_ {
Seq[Any](format.raw/*1.1*/("""<h1>Welcome hello world</h1>"""))
}
}
def render(): play.twirl.api.HtmlFormat.Appendable = apply()
def f:(() => play.twirl.api.HtmlFormat.Appendable) = () => apply()
def ref: this.type = this
}
render()
和apply()
的返回类型为play.twirl.api.HtmlFormat.Appendable
。如何将其转换为String,以便将其写入文件?
答案 0 :(得分:3)
play.twirl.api.HtmlFormat.Appendable
只是play.twirl.api.Html
的类型别名,其toString
方法。
即
views.html.hello().toString