了解"欢迎使用Play 2.0"页面创建

chr*_*ris 6 playframework playframework-2.0

我刚刚开始尝试使用play框架并尝试理解在创建新项目时获得的这个默认应用程序.

据我所知,在加载localhost页面时,Application.index()由于路由文件中的规范,http get请求会进入并被定向到该方法?在该index()方法中,生成大量HTML代码并在Result对象中返回并传递给index.scala.html文件,该文件将其移交到main.scala.html更多html包围的位置.

现在,我不清楚一些事情:

  • Application.java这个行return ok(index.render("Hello World!")); 索引属于views.html.*; 但这个包裹在哪里?我在API中找不到它:(

  • 为什么我不能重命名index.scala.html文件?这个名字是一个惯例吗?

  • index.scala.html文件本身:做@play20.welcome(message, style = "Java")什么?这是获得"欢迎来到Play 2.0"网站吗?再一次 - 我找不到play20的文档/ API条目:(

我希望,有人可以帮助我得到一个概述,因为我现在真的很困惑.. ^^我已经做了很多java,但根本没有网络编程,因此所有不同技术和语言的混合是此刻很奇怪!

kap*_*pex 6

TodoList示例中,站点根目录GET /映射到方法Application.index(),因此此方法创建您看到的html.

控制器所做的一切都发生在这一行:return ok(index.render("Hello World!"));.基本上它调用一些生成html并返回输出的模板.

  • return ok( ... ) 用于表示成功请求,返回代码200.
  • index.render( ... )返回名为的模板的呈现的html输出index.这里使用的包是views.html.*实际引用的views/index.scala.html.因此该index部分不是惯例,您可以根据需要重命名该部分.模板需要在像Java类一样可用之前进行编译,这就是包名称不同的原因.框架负责这一点.
  • "Hello World!"是参数,在第一行中指定为message参数index.scala.html
  • @play20.welcome( ... )只需调用另一个模板,一个包含在框架中的欢迎页面.这不是一个需要改变的主题 - 它只是静态页面,从视图中删除该行后,您可以放置​​任何您想要的HTML.