2013-03-17 40 views
10

Tôi muốn tạo câu lệnh trong mẫu freemarker. Tôi đang đọc howto http://freemarker.sourceforge.net/ nhưng chỉ có danh sách. Làm thế nào tôi có thể tạo ra cho tuyên bố hoặc foreach.mẫu freemarker cho câu lệnh vòng lặp

parameter.put("size", size); 

Tôi muốn tạo ra trong mẫu Freemarker cho tuyên bố như

for (int number = 1; number <= size; number++) { 
+0

Tôi sợ giải pháp duy nhất của bạn là tuyên bố danh sách. Tại sao bạn cần phương pháp vòng lặp khác? –

Trả lời

20

Từ hướng dẫn Freemarker bạn có thể làm:

<#assign x=3> 
<#list 1..x as i> 
    ${i} 
</#list> 

Chỉnh sửa: Hãy coi chừng, nếu x bằng 0 (hoặc ít hơn), nó sẽ được tính ngược lại. Vì vậy, bạn chủ yếu muốn 1 ..< x, loại trừ x (điều này yêu cầu FreeMarker 2.3.22).

+0

tôi có thể concatinate $ {i} với một số tham số khác không? – mbrc

+0

một cái gì đó như: $ {taskDetailsDto.inputParam ['' taskMsg _ $ {i} '']} – mbrc

+0

Tôi nghĩ rằng có bạn có thể làm điều đó. Bạn đã thử à ? –

3

Bạn có thể sử dụng list chỉ:

<ul> 
<#list 1..2 as index> 
    <li>${index}</li> 
</#list> 
</ul> 
+0

Lưu ý: Tính năng này chỉ hoạt động đối với các phiên bản Freemarker cao hơn 2.3.23. – ovaherenow