Java 卵石模板环
我试图构建一个简单的循环,在其中我执行了N次模板。我编写了一个函数,它接受一个参数并根据它输出字符串,我需要执行多次 如果我明确定义了一个范围,则以下操作有效:Java 卵石模板环,java,pebble,Java,Pebble,我试图构建一个简单的循环,在其中我执行了N次模板。我编写了一个函数,它接受一个参数并根据它输出字符串,我需要执行多次 如果我明确定义了一个范围,则以下操作有效: {% for t in ["0","1","2"] %} {{ customFunction(t) }} {% endfor %} 但是,我希望在某个任意范围内执行类似于循环的操作(甚至是执行自定义函数N次的while循环): 我还尝试定义一个函数,该函数返回一个称为range()的范围[“0”、“1”、“2”],并尝试在for循环中
{% for t in ["0","1","2"] %}
{{ customFunction(t) }}
{% endfor %}
但是,我希望在某个任意范围内执行类似于循环的操作(甚至是执行自定义函数N次的while循环):
我还尝试定义一个函数,该函数返回一个称为range()的范围[“0”、“1”、“2”],并尝试在for循环中使用,但没有成功:
{% for t in range() %}
{{ customFunction(t) }}
{% endfor %}
所以不确定这是否可行。AlexC。我也为此头疼 我找到了一个解决方案,希望它与您的问题相对应。你就快到了 在pebble模板中,要对语句使用带有
的简单循环,请使用如下代码
{% set n = 15 %}
{% for t in range(1, n) %}
{{ customFunction(t) }}
{% endfor %}
仅供参考,下面是在我的代码中实际应用的,其中totalPageCount来自spring模型值(原始整数)
{范围(1,totalPageCount)%内的i的%
{%endfor%}
希望你能成功 IMHO,通过阅读少量的文档,Pebble看起来像一个真正原始的模板系统,没有太多的标准功能。您最好使用更成熟的系统,如ThymeLeaf或Freemarker。我需要创建自己的函数的能力,ThymeLeaf此时不支持此功能,Freemarker在这方面非常笨拙。Freemarker是我第一次尝试的。然后,我尝试了大约5个模板引擎,没有一个允许轻松创建java支持的函数。你知道吗?我从pebble切换到JSP,因为在评估模板时没有流控制太麻烦了。我完全同意这一点。Pebble视图模板引擎还不是功能强大的模板。自从我被迫在我的公司里和pebble一起工作,而且是新来的,这些天我的日子有点不好过。无论如何,使用Thymeleaf或Freemarker怎么样?我尝试了这两种方法,但使用JSP要容易得多,因为它已经在tomcat中运行并实现自定义标记,所以我认为JSP比大多数模板引擎更强大、更灵活。是的,你是对的。如果我周围没有强制执行,我会使用JSP而不是其他模板引擎。但我认为thymeleaf和freemarker对于JSP来说已经足够好了。谢谢你的回复。祝你好运
{% set n = 15 %}
{% for t in range(1, n) %}
{{ customFunction(t) }}
{% endfor %}
{% for i in range(1, totalPageCount) %}
<pre>
<li><a href="">{{ i }}</a></li>
</pre>
{% endfor %}