我对Web开发有点陌生,特别是Play框架,我刚刚看过几个Play教程,到目前为止我看到的每个教程都以JSON的形式返回给客户端,然后在客户端使用JavaScript(翻译为CoffeeScript)从JSON构建HTML列表。为什么不直接向我们的 HTML 视图添加一个代码来执行 for 循环并在服务器端打印这些模型的列表?它似乎更容易,直观且不易出错。
这是一个这样的Play教程,来自Play网页的官方教程。
您链接的演示文稿描述了创建单页应用程序 (SPA),因此它通过 JSON 获取数据。没有完整地看过它,只是可以假设当作者一开始提到他将使用AngularJS时。
使用SPA是否比普通方法更好取决于许多因素,主要是项目规范,无法直接回答。
最重要的是,Play允许你同时使用它们,并且不会强制程序员使用特定的一个。
您可以通过PlayFramework中的Scala模板来获取解决方案。
代码将是
在控制器中
public static Result orderPage(){
// put your code here
List<Order> orderList = new ArrayList<Order>();
// add your order bean here.
return ok(orderList);
}
在应用程序中>视图创建一个文件 orderPage.scala.html并按照以下链接中的 scala 模板文档进行操作
https://www.playframework.com/documentation/2.3.x/ScalaTemplates
按顺序页面.scala.html
@(orders: List[Order])
<ul>
@for(order <- orders) {
<li>@order.title</li>
}
</ul>
您需要从控制器传递模型并在 html 页面中接收模型。