Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 卵石模板环_Java_Pebble - Fatal编程技术网

Java 卵石模板环

Java 卵石模板环,java,pebble,Java,Pebble,我试图构建一个简单的循环,在其中我执行了N次模板。我编写了一个函数,它接受一个参数并根据它输出字符串,我需要执行多次 如果我明确定义了一个范围,则以下操作有效: {% for t in ["0","1","2"] %} {{ customFunction(t) }} {% endfor %} 但是,我希望在某个任意范围内执行类似于循环的操作(甚至是执行自定义函数N次的while循环): 我还尝试定义一个函数,该函数返回一个称为range()的范围[“0”、“1”、“2”],并尝试在for循环中

我试图构建一个简单的循环,在其中我执行了N次模板。我编写了一个函数,它接受一个参数并根据它输出字符串,我需要执行多次

如果我明确定义了一个范围,则以下操作有效:

{% 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 %}