找不到视图中的子文件夹(Can't find view in subfolder)

2019-07-18 22:51发布

我刚开始使用Play2.0框架,我想使用主模板在我home/index模板。 我遇到的问题是,当它在共享文件夹,如果我把它拿出来,并把它在浏览根然后正常工作无法找到“主”。

所以我想知道怎样才能引用main.scala.htmlindex.scala.html

我的文件夹结构如下:

  • 查看
      • index.scala.html
    • 共享
      • main.scala.html

我在代码index.scala.html是:

@head = {

}

@content = {
    <b>Home Screen</b>!!
}

ERROR: @main(title = "Home",head, content)

我得到的错误是:

not found: value main.

Answer 1:

一旦你进入子文件夹视图有这种类似“伪包”称为“html”。 我不确信整个它是如何工作,但试试这个:

@views.html.Shared.main


Answer 2:

您可以使用:

@Shared.main(title = "Home",head, content)

出于安全和性能方面的原因播放编译模板斯卡拉功能,并将其存储在托管文件夹/target/scala-2.9.1/src_managed/main/views ,这样你就可以预览找到正确的路径。

规则是容易保存的模式查看文件:

  • /app/views/viewName.scala.ext (其中ext可以htmlxmltxt )播放将编译意见: view.ext.viewName
  • /app/views/SomeSub/OtherSub/viewName.scala.ext这将是: view.ext.SomeSub.OtherSub.viewName

所以:

/app/views/general.scala.html             = views.html.general
/app/views/Main/index.scala.html          = views.html.Main.index
/app/views/Api/usersList.scala.xml        = views.xml.Api.usersList
/app/views/Email/English/body.scala.txt   = views.txt.Email.English.body

等等...

有一些情况下/app/views/tags包装是进口的意见汽车,所以你可以使用/app/views/tags/myTag.scala.html只是: @tags.myTag(args)在任何视图语法。



文章来源: Can't find view in subfolder