我正在尝试解决可能简单的问题,在我的'views'目录中,在典型的Play框架设置中,我想将我的模板(* .scala.html文件)分组,可能使用另一个文件夹小组,例如。我想拥有带有以下文件的客户文件夹:
createForm.scala.html
editForm.scala.html
list.scala.html
到目前为止一切顺利但是当我尝试从我的控制器访问该视图引用时(例如Ok(views.html.list(..))
- > Ok(views.customers.html.list(...)
),我收到错误:
object customers is not a member of package views
是否有关于如何使用多个视图,如何将它们收集到组中以及如何在其他视图或控制器中使用它们的最佳实践/方法。
提前谢谢。答案 0 :(得分:7)
模板引擎的工作方式是定义为:
的模板/views/application/index.scala.html
将变成一个班级:
views.html.application.index
所以基本上views.html
总是作为前缀保留。参看Play template documentation。
在你的情况下,这意味着它应该是
Ok(views.html.customers.list(...))
答案 1 :(得分:3)
如果仔细查看target
目录,您将看到如何编译视图以及如何编写包:
Ok(views.html.group.view())
你也可以像这样导入:
@import views.html.group._
//...
Ok(view())