【发布时间】:2017-07-13 17:41:08
【问题描述】:
我是玩框架的新手。在尝试使用 play 生成 html 模板时,我在 ticket.getTicketIds 行收到错误 illegal start of simple pattern。一直在花一些时间试图解决这个问题,但没有用。
<tbody>
@for( ticket <- @obj.getPurchasedTickets() ) {
@for( (key,val) <- @obj.getTicketsCalculation() ) {
@if( key.equals(ticket.getTicketId())) {
<tr>
<td class="desc">@ticket.getTicketName()<br></br>
@if(ticket.getTicketIds() != null && !ticket.getTicketIds().isEmpty()) {
@for( ticketid <- ticket.getTicketIds ){
#@ticketid
}
}
</td>
<td class="unit">@ticket.getPrice()</td>
</tr>
}
}
}
</tbody>
以下 POJO 用于获取必要的值
public class PurchasedTicket {
private String ticketId; // represents the ticket's id
private String ticketName;
private Integer numberOfTickets;
private Double price;
private List<String> ticketIds; // list of tickets bought with this ticket
// setters and getters
}
public class Wrapper{
private Map ticketsCalculation;
private List<PurchasedTicket> purchasedTickets;
// setters and getters
}
模板部分表示的obj是Wrapper类的对象
【问题讨论】:
-
ticket.getTicketIds显示了几次。哪一个? -
@for(ticketid
-
它们代表字符串值。
-
我现在看不出有什么问题。我很好奇出了什么问题。所以
ticket.getTicketIds是List<String>,对吧?你用调试器检查了吗?不管怎样,你在重复这个方法,我认为你可以定义新变量,这样它会简化代码,也许你会看到哪里出了问题:playframework.com/documentation/2.0/… -
有
getTicketIds(复数)和getTicketId(单数)两种方法,对吧?
标签: java scala playframework-2.0