Play2 默认支持的模板类型是 html, txt, xml 和 js,不在这些支持之列的模板文件即使放到 app/views 目录中,也不会被编译的。如果要支持自定义的模板类型就要些定制了,这比 Play1 复杂些。模板的定制包括在 Build.scala 或 build.sbt 中加上 templatesTypes 配置,并需创建 BufferedContent 和 Format 实现类。下面以增加 json 模板类型为例,兼顾 Scala 和 Java 的实现类,是基于 Play2.2 的,在 Play2.3 中又略有不同。
官方有相关的文档,参考:Custom formats on Scala, Custom formats on Java 和 模板定义参考.
在较新一些的 2.2 的 PlaySettings 中,可以看到
1 2 3 4 5 6 |
templatesTypes := Map( "html" -> "play.api.templates.HtmlFormat", "txt" -> "play.api.templates.TxtFormat", "xml" -> "play.api.templates.XmlFormat", "js" -> "play.api.templates.JavaScriptFormat" ) |
弄清了上面的原理后,开始我们的步骤
第一步:修改项目构建文件
在构建文件 build.sbt 或 Build.scala 中增加下面的内容作为项目的 setting 阅读全文 >>