Freemarker: interpolação dinâmica de sub variáveis
Eu estou tentando criar uma macro FreeMarker que pode retornar a interpolação de uma concatenação de uma seqüência de caracteres e a variável de entrada:
<#macro findValue var>
<#if (.vars["foo." + var]) ??>
.vars["foo." + var]
<#else>
${.vars["bar." + var]}
</#if>
</#macro>
Infelizmente isso não funciona. Primeiramente,${.vars["bar." + var]}
dá umundefined
erro. Em segundo lugar, oif
condição sempre retornafalse
mesmo quando eu posso ver que a variável sub existe. Parece que o.vars
variável só pode procurar variáveis raiz, mas não sub variáveis comofoo.test
.