Freemarker为变量赋值

时间:2015-01-15 02:34:13

标签: freemarker

我在尝试使用Freemarker为变量赋值时遇到了麻烦。

<#if size??>
<#assign num=size?number>
<#if (num>0)>       
    <#list 0..num-1 as i>
        <#if .vars['abc'+i?c] = "test"> 
            <#assign .vars['abc'+i?c] = .vars['abc'+i?c]?replace("test","Test")>
        </#if>
    </#list>
</#if>

这是错误消息:遇到&#34;。&#34;,但是期待以下之一: STRING_LITERAL
RAW_STRING
ID
谁能帮我这个? 谢谢。

1 个答案:

答案 0 :(得分:0)

您只能在FreeMarker模板中编写顶级变量。此外,您无法使用动态构造的名称分配变量,但?interpret hack:<@"<#assign abc${i?c} = abc${i?c}?reaplce('test', "Test")>"?interpret />除外。显然这很可怕......顺便问一下,这里的用例是什么?为什么需要分配动态构造的变量名?