我是 Play 新手(老实说,我也是 MVC 新手)。我遇到了一个看起来不应该那么难的问题。
我刚刚发现了这个同名的帖子: Rendering a part of a Play framework 2.0 template
但我似乎无法让这个工作。
我有一个模板(索引),其中包含另一个模板(行),我想在单击按钮时呈现该模板(索引)。这是我的索引模板中的表格:
@form(routes.Application.getNextRows()) {<input type="submit" value="Next Rows!">}
这是getNextRows:
public static Result getNextRows() {
return ok(views.html.tags.rows.render(rowsIterator.next()));
}
这就是我认为我有问题的地方,但我不知道我应该如何进行那个调用,或者我应该返回什么(没有得到一些 NullPointerException)。
这是需要重新渲染的位(在索引中):
<table cellspacing="0" style="table-layout:fixed" border="2">
<col width="50%">
<col width="45%">
<col width="5%">
@tags.rows(rowsIterator.first())
</table>
因此,当我单击按钮时,我需要传入一个新的行元素,而不是“rowsIterator.first()” 大概我做错了什么,或者错过了一些明显的调用来解决这个问题。
感谢您的帮助(如果很明显我错过了一些更大的概念,请随时教育我)。
查看 Zentasks 示例,我看到这样的代码,它似乎使页面的一部分重新加载。知道这是如何工作的吗?
<a class="name" href="#@routes.Tasks.index(project.id)">@project.name</a>